不同MS SQL服务器的连接字符串

时间:2017-11-14 07:21:17

标签: c# sql-server

我的系统中有几个SQL服务器:

2017 MSSQLSERVER
2008 SQLEXPRESS

在SSMS中我看到它们像:

GM\
GM\SQLEXPRESS

enter image description here

如果我需要连接到SQLEXPRESS,请在.中使用Server的连接字符串:

connectionString="Server=.;Database=LearnCSharp;Integrated Security=True"

但是.在我的情况下意味着什么以及应该在连接字符串中放置什么才能连接到2017 MSSQLSERVER

UPD。:

.连接到2017服务器。我注意到在计算机重启之前它连接到2008服务器

GM连接到2017服务器。

.\MSSQLSERVER在我的应用程序中生成异常;

System.Data.SqlClient.SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 25 - Connection string is not valid) ---> System.ComponentModel.Win32Exception (0x80004005): The parameter is incorrect

.\SQLEXPRESS and GM\SQLEXPRESS - 都连接到服务器2008

2 个答案:

答案 0 :(得分:0)

表示localhost或“此机器”

要指定实例名称,请在点(或计算机名称)后面使用反斜杠:

.\SQLEXPRESS
YOURCOMPUTER\SQLEXPRESS
OTHERCOMPUTER\SQLEXPRESS

请记住,当此应用程序部署到另一台计算机时,“此计算机”的值会更改。这可能是也可能不是你想要的,所以将来要注意它

还值得注意的是,默认的SQL Server实例不能通过名称引用,如果您尝试提供其名称,则连接将无法解决。如果您知道要连接到默认的SQL Server实例(无论是哪一个,并且只能有一个),那么不要使用斜杠或名称,只是对机器的引用:

.

YOURCOMPUTER

答案 1 :(得分:0)

点只是引用本地计算机的缩写方式,如下所示"。\ MSSQLSERVER"应该这样做:SQL Server Connection Strings - dot(".") or "(local)" or "(localdb)")。