SQL网络接口,错误:25 - 连接字符串在Powershell中无效

时间:2012-09-09 04:57:18

标签: sql powershell

$SQLconnection = New-Object System.Data.SqlClient.SqlConnection
$SQLconnection.ConnectionString = "Server = MySQLservername\MSSQLSERVER; Database = "MYSQLDB"; Integrated Security = True"
$SQLconnection.open()

在MSSQL 2012中,有效。 在MSSQL 2005中,获得了SQL网络接口,错误:25 - 连接字符串无效。

如果仅在connectionstring中使用“Server = MySQLServername”,则可以正常工作。 我确定实例名称是正确的。这是SQL 2005的错误吗?

6 个答案:

答案 0 :(得分:4)

MS,您无法按名称连接到默认实例MSSQLSERVER。您必须省略实例名称。我已经验证了同样的功能"在MS SQL 2008R2和2014 SP2中。

您可能在2012年配置了启用它的功能,但我的默认设置无法使用它。

答案 1 :(得分:2)

如果您的数据库/实例是在端口号上提供的,那么当我没有正确设置连接字符串时,我收到错误25。

$SQLconnection.ConnectionString = "Server = MySQLservername.domain.ext\InstanceName, PORT; Database = `"MYSQLDB`"; Integrated Security = True"

例如:

$SQLconnection.ConnectionString = "Server = SQL01v.fordco.prd\DBSYS, 1433; Database = CarsDB; Integrated Security = True"

答案 2 :(得分:1)

你正在构建你的字符串错误,我很惊讶这适用于任何版本。您在连接字符串的中间有“MYSQLDB”,并且您没有在引用的字符串中转义双引号。您可以通过运行以下两个命令来查看:

$a = write-output "Server = MySQLservername\MSSQLSERVER; Database = "MYSQLDB"; Integrated Security = True" 
$b = write-output "Server = MySQLservername\MSSQLSERVER; Database = `"MYSQLDB`"; Integrated Security = True"
$a.gettype()
$b.gettype()

第一行返回一个数组而不是一个字符串,因为分号被视为运行两个命令

请记住在双引号字符串中使用双引号,你会没事的:

$SQLconnection.ConnectionString = "Server = MySQLservername\MSSQLSERVER; Database = `"MYSQLDB`"; Integrated Security = True"

答案 3 :(得分:0)

据我所知,从来没有要求在连接字符串中引用服务器或数据库名称。你应该使用这个

$SQLconnection.ConnectionString = "Server=MySQLservername\MSSQLSERVER;Database=MYSQLDB;Integrated Security=True"

答案 4 :(得分:0)

出现此错误的一种方法是,将Network Profile设置为"Public"。 它必须为"Private"

要更改(或检查)。

  

点击“开始”->“设置”->“网络和互联网”

     

单击状态
单击“更改连接属性”
在“网络”下   个人资料选择“私人”

答案 5 :(得分:0)

我遇到了同样的错误并将 appsettings.json 更改为

"DefaultConnection": "Server=localhost; database=my-vue-starter-new;MultipleActiveResultSets=true;User Id=SA;Password=myPassword;"

在 linux 上很重要,服务器是 localhost 并且 Id 自动变为 SA

了解更多信息:https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu?view=sql-server-ver15

如果您没有配置 mssql,将 tcpport 启用为 1433,则另一件事可能会导致该问题 如果没有,请尝试重新连接。