C# 如何在与局域网相连的其他计算机上使用SQL Server数据库运行桌面应用程序

C# 如何在与局域网相连的其他计算机上使用SQL Server数据库运行桌面应用程序,c#,sql-server,winforms,C#,Sql Server,Winforms,我创建了一个与本地sql server数据库连接的windows窗体应用程序。sql server已通过windows身份验证 现在我想在另一台计算机上运行相同的应用程序,这台计算机通过局域网连接到这台计算机。我只是想知道允许在另一台计算机上访问我的windows身份验证数据库的逐步过程。默认情况下,SQL Server Express中的远程连接已关闭 只需打开SQL Express的远程连接, 启用TCPIP协议并重新启动服务,检查errorlog是否正在侦听所有网络适配器 现在尝试从客户端

我创建了一个与本地sql server数据库连接的windows窗体应用程序。sql server已通过windows身份验证


现在我想在另一台计算机上运行相同的应用程序,这台计算机通过局域网连接到这台计算机。我只是想知道允许在另一台计算机上访问我的windows身份验证数据库的逐步过程。

默认情况下,SQL Server Express中的远程连接已关闭

只需打开SQL Express的远程连接, 启用TCPIP协议并重新启动服务,检查errorlog是否正在侦听所有网络适配器 现在尝试从客户端pc使用机器名(因为它是动态的)进行连接

这里有一个步骤

  • 打开SQL Server配置管理器
  • 选择SQL Server网络配置
  • 选择您的SQL Server实例
  • 确保TCP/IP协议已启用
  • 右键单击TCP/IP协议
  • 选择属性
  • 单击IP地址选项卡
  • 向下滚动至IP4。服务器的IP地址应该在这里。将“活动”设置为“是”,将“启用”设置为“是”。将TCP端口设置为1433(不知道是否有必要。可以提供一些专家意见)
  • 向下滚动到IPAll。将TCP端口设置为1433
  • 为端口1433制定入站防火墙规则
  • 打开sql server management studio,右键单击服务器实例,属性->连接->允许远程连接。安全->SQL Server和Windows身份验证模式
  • 重新启动sql server服务
  • 重新启动sql server浏览器
现在使用sql连接字符串
COMPUTERNAME
例如

data source=COMPUTERNAME;database=databasename;user id=sa;password=pass;" providerName="System.Data.SqlClient"

另一个参考链接..

我希望您也有sql server身份验证。如果两台计算机不在同一域中,则需要使用sql server身份验证从其他计算机进行连接


按照Anant Dabii描述的步骤打开表面积配置。现在,您还需要更改connectionstring。替换本地主机或。通过安装sql server的计算机的IP或计算机名在您当前的连接字符串中。

但是我使用的是sql server 2008 r2Sql server表面区域没有任何选项现在如果我想使用windows身份验证,那么在这些步骤之后是否可以??我应用了除LastU之外的所有程序,如果运行不同的域,则可能是windwos auth。不适合你。为什么他需要WCF或web API将另一台电脑连接到同一局域网上的SQL实例?所以你的意思是说我需要SQL server身份验证才能做到这一点。但是我只使用windows身份验证我不确定windows身份验证是否有效。但是,Sql身份验证确实有效。