难以连接到LAN上的SQL Server Express

时间:2014-03-09 13:18:03

标签: c# sql sql-server

我无法在局域网中的计算机上连接到SQL Server。

我做了以下事情:

1。)使运行Server 10.0.0.7的机器的IP成为LAN IP 10.0.0.X上的其他机器的IP。局域网上没有互联网(并且会保持这种状态),允许更改IP。

2.)通过执行This

启用远程连接

3.)使用适当的连接字符串。

现在我唯一的问题是关于那些希望在服务器上连接的人的连接字符串,这里是当前的Con-string:

string sConnection = @"Server=10.0.0.7\MARNUS-PC\MARNUS_HOME; User ID=MARNUS-PC\MARNUS_HOME; Password=somepassword; Initial Catalog=TestDB;";

我的问题是:

1.)我把服务器部分放在什么位置?这是我的服务器名称和实例名称    管理工作室 - 服务器名称:MARNUS-PC \ MARNUS_HOME,实例名称:MARNUS_HOME。

2.)我使用什么作为用户ID?我希望使用Windows身份验证而不是sql server身份验证(我已在服务器上启用了两者),那么连接字符串应如何更改以及如何在管理工作室(如果需要)允许服务器端的用户?

3.)我认为如果我使用Windows身份验证,我不需要Con-String的密码部分?

我为所有问题道歉,但我被教授MS Access,现在我自己切换到SQL Server。

2 个答案:

答案 0 :(得分:2)

你的连接字符串必须是......

string sConnection = @"Server=MARNUS-PC\InstanceName; User ID=MARNUS-PC\MARNUS_HOME; Password=somepassword; Initial Catalog=TestDB;";

实例名称是Sql Server Instance name

如果您不确定您的实例名称,请在Sql Server Management Studio中执行以下语句

SELECT @@SERVERNAME

它将返回[ServerName\InstanceName]您可以将整个返回的字符串传递给您的连接字符串是您的服务器名称Server=ServerName\InstanceName;

Windows身份验证

要使用Windows身份验证,您必须使用类似这样的连接字符串..

 string sConnection = @"Server=MARNUS-PC\InstanceName;  Initial Catalog=TestDB; integrated security=SSPI";

答案 1 :(得分:2)

IP地址标识计算机,因此您不会同时使用IP地址和计算机名称。您可以在服务器设置中使用IP地址:

Server=10.0.0.6\MARNUS_HOME;

或者您可以使用计算机名称:

Server=MARNUS-PC\MARNUS_HOME;

您使用Windows身份验证时不应指定任何密码是正确的,并且您也不应指定任何用户名,但是您需要指定您正在使用它:

Trusted_Connection=Yes;