服务器连接在代码中失败,但与数据库资源管理器一起工作
本文关键字:数据库 资源管理器 一起 工作 连接 代码 失败 服务器 | 更新日期: 2023-09-27 18:18:16
我有一个奇怪的问题,试图连接到一个SQL服务器。使用Visual Studio,我可以毫无问题地使用数据库资源管理器连接,创建查询并获得结果。使用来自这些连接的连接字符串在运行c#代码时连接失败,我得到一个错误:
网络错误26.
我已经尝试了所有常见的怀疑:防火墙,连接字符串,权限等,现在完全沮丧。
Visual Studio VS Express for Desktop 2015的版本。我试过System.Data。SQL, System.Data。ODBC、实体框架和任何使用c#代码的东西都会失败。
谁能解释为什么通过VS连接将工作,但一个简单的连接对象在c#失败?
注:我不是一个专业的程序员,我只是一个想要改进小实验室的小医护人员。
感谢工作连接字符串为'Server=server name'instance;Initial Catalog=table;Persist Security Info=True;User ID=my name; Password=pwd;'
。将其复制到c#代码中无法建立连接(如上所述)。我试过SQLCommandBuilder
,失败了。服务器是另一台机器,而不是本地DB。
连接代码示例:
private void OpenConnection()
{
string connStr = @"Server=<server name>'<instance>;Initial Catalog=<table>;Persist Security Info=True;User ID=<my name>; Password=<pwd>";
try {
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
除了连接字符串,如果你也发布你正在尝试的连接类型,这将是很大的帮助。我相信这些是三种更常见的连接字符串类型的模型:
标准安全:Server=myServerAddress;Database=myDataBase;User Id=myUsername;
Password=myPassword;
可信连接
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
连接到SQL Server实例
Server=myServerName'myInstanceName;Database=myDataBase;User Id=myUsername;
Password=myPassword;
可能您的连接字符串无效,首先,为了确保拥有一个有效的连接字符串,请使用"udl"文件。对于创建udl,创建一个记事本文本文件,并将扩展名从"txt"更改为udl,双击它,它会显示你的"数据链接属性",所以设置它,它使你的连接字符串,甚至你可以测试连接状态