2014-10-07 147 views
3

我发现,我的SQL服务器已禁用命名管道,但启用了TCP/IP(它会保持这种方式)。现在我试图从Visual Studio连接到数据库,但没有运气。 到目前为止,我已经试过:通过TCP/IP连接到SQL服务器,而不是NP

string connstring = "Data Source=192.168.1.1:1433 ;Initial Catalog=np-sparcsn4-custom;Persist Security Info=True;User ID=xxxx;Password=/*****/"; 

string connstring = "Data Source=192.168.1.1:1433 ; Network Library=DBMSSOCN; Initial Catalog=np-sparcsn4-custom;Persist Security Info=True;User ID=xxxx;Password=/*****/"; 

我试图替换名称的IP地址 - 没有运气。当我尝试使用表格适配器进行连接时,我可以预览数据,如果使用ie网格,也是如此 - 但是在代码中,我根本无法打开连接:我总是遇到与网络相关的或服务器特定的错误,通常是无论是

Named Pipes Provider: Could not open a connection to SQL Server [5] 

provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server 

服务器设置为接受远程连接,可被访问。

更新:

我已经试过

string connstring = "Server=tcp:192.168.1.1,1433 ;Initial Catalog=np-sparcsn4-custom;Persist Security Info=True;User ID=xxx;Password=/****/"; 

"Server=tcp:ponln4report,1433 .... 

和我有错误:

provider: TCP Provider, error: 0 - A non-recoverable error occurred during a database lookup**strong text** 

enter image description here

enter image description here

EDI2:我发现了一个旧的SQL Server 2005中,我可以连接没有问题。这有点痛苦,因为它缺少日期和时间数据类型,但我猜它现在必须做。

+0

你确定SQL Server具有启用并可访问的TCP/IP吗? – abatishchev 2014-10-07 22:36:27

+0

是的,它们已启用 – Yasskier 2014-10-07 22:40:28

+0

检查SQL Native Client 10.0配置节点下的内容:是否启用了tcp/ip? – Isantipov 2014-10-07 22:40:47

回答

1

对于C#,使用此连接字符串

connectionString="Data Source=192.168.1.1,1433;Initial Catalog=np-sparcsn4-custom;Integrated Security=false;User ID=your_username;Password=your_password" 

如果您需要修改web.config文件,添加此节点:

<connectionStrings> 
     <remove name="LocalSqlServer" /> 
     <add name="LocalSqlServer" connectionString="Data Source=192.168.1.1,1433;Initial Catalog=np-sparcsn4-custom;Integrated Security=false;User ID=your_username;Password=your_password" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 
+0

我试过了。 “数据源”和“服务器”可以互换。 – Yasskier 2014-10-08 21:05:04

0

确保端口1433设置IPALL in SQL Configuration Manager -> Protocols for SQLEXPRESS screenshot