繁体   English   中英

使用C#连接到服务器上的SQL Server数据库

[英]Connecting to SQL Server database on a server with C#

我正在尝试使用C#程序连接到服务器上的数据库,并且连接不断超时。 我的连接字符串是:

string MyConnection = @"Data Source=YJN-DC-SQLEXPRESS;Initial Catalog=Test; Integrated Security = SSPI; User ID= username; Password=password;";

SQL Server确实允许远程连接。 我没有发布图像的声誉,因此这是它的链接http://imgur.com/0CDBg5q这是我收到的错误消息。 我正在使用Visual Studio 2012

您需要确保您的连接字符串正确。 对于初学者,如dotnetom所指出的,您需要使用集成安全性(Windows身份验证)或用户ID和密码,而不能同时使用。

这里是构建连接字符串的一些有用信息,但是我将为您提供所需的基础知识。 https://msdn.microsoft.com/zh-cn/library/system.data.sqlclient.sqlconnection.connectionstring%28v=vs.110%29.aspx

如果要使用用户名和密码,则需要使用:

String MyConnection = @"Data Source=<ServerName>;InitialCatalog=<DatabaseName>;User ID=<UserName>;Password=<Password>;";

如果要使用集成安全性(Windows身份验证),则需要使用:

String MyConnection = @"Data Source=<ServerName>;InitialCatalog=<DatabaseName>;Integrated Security=True;";

用您所拥有的信息替换<ServerName>以及所有其他信息。 如果服务器具有实例名称,那么您将在<ServerName> 结果将类似于ServerName\\InstanceName 只要您正在使用Windows身份验证进行身份验证,那么您就应该能够使用Integrated Security=True并且可以。

如果实际上确实需要增加超时,则可以通过添加连接超时来做到这一点: Connection Timeout=30 连接超时以秒为单位。

如果您拥有Microsoft SQL Server Management Studio,我强烈建议您确保您的凭据可用于有问题的服务器。 试用用户名/密码组合或集成安全性。

编辑:要回答有关是Password= Password还是Password=Password ,您应该使用第二个选项并删除它们之间的空格。 我认为应该仍然可以使用的另一种方法是,没有空格只是更加简洁。

这是另一个带有示例连接字符串的出色站点: 示例连接字符串

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM