我想通过使用连接字符串的代码连接到远程数据库(SQL Server 2008)。但我无法连接到它。但是我可以使用SQL Server身份验证成功地使用SQL Server Management Studio连接数据库。
但是每当我尝试使用代码时,我都会得到像::
这样的异常[DBNETLIB] [ConnectionOpen(Invalid Instance())。]连接无效。
我的连接字符串就像这样::
Data Source=192.x.x.x;Initial Catalog=mydbName;User ID=user;Password=passw;provider=SQLOLEDB
任何人都可以帮助我。
提前感谢。
答案 0 :(得分:6)
您没有显示您用于连接的C#代码 - 但我认为问题在于提供商。如果可能 - 使用System.Data.SqlClient
程序集中的本机 SQL客户端界面连接到SQL Server。
您可以尝试使用此连接字符串:
Data Source=192.x.x.x;Initial Catalog=mydbName;User ID=user;Password=passw;
在你的配置中:
<configuration>
<connectionStrings>
<add name="MyConnStr"
connectionString="Data Source=192.x.x.x;Initial Catalog=mydbName;User ID=user;Password=passw;" />
</connectionStrings>
</configuration>
然后使用此代码段:
string connectionString = ConfigurationManager.ConnectionStrings["MyConnStr"].ConnectionString;
using(SqlConnection conn = new SqlConnection(connectionString))
{
....
}
请参阅Connection Strings网站,了解吨有效连接字符串的示例以及所有这些选项的含义。