无法打开与SQL Server的连接

时间:2014-08-13 12:21:02

标签: c# sql-server connection-string

当我尝试使用以下代码使用SQL与SQL Server身份验证连接到本地域中的MS SQL服务器时失败:

SqlConnection sql = new SqlConnection(conString);
sql.Open();
sql.Close();

我可以使用windows或sql身份验证连接到我的本地SQLExpress测试数据库。我尝试为域数据库使用许多不同的连接字符串,包括使用(成功)将服务器添加为DataSource生成的连接字符串。我做错了什么?

编辑:当我在visual studio的服务器资源管理器中添加服务器时,我可以成功连接。我假设由此生成的连接字符串是有效的:

Data Source=mySubDomain.myDomain.local;Initial Catalog=myDatabase;Persist Security Info=True;User ID=myUser;Password=myPassword;

我检查过并允许远程连接。我没有权限访问运行sql server的Windows服务器,所以我无法检查任何进一步的设置。

编辑2:以下消息附带例外:

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: 26 - Error Locating Server/Instance Specified)

编辑3: 我在同一个域中的另一台计算机上测试了我的应用程序,并且它有效。有人知道发生了什么或我怎么找到了?

1 个答案:

答案 0 :(得分:0)

此公司域的Group Policyfirewall(或两者,不确定)使我的.exe文件(以及任何其他.exe)按以下方式运行:

  • C:\Program Files(或C:\Program Files (x86))启动它,因为任何用户都可以正常工作

  • 不允许以普通用户身份从其他任何地方启动它并失败

  • 作为本地管理员从其他任何地方启动它将执行该应用程序,但连接被阻止