【发布时间】:2014-05-11 20:32:38
【问题描述】:
当完全相同的代码(产生此错误)今天整天完美运行时,第一次导致以下错误的原因是什么?
--------------- 建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。这 服务器未找到或无法访问。验证实例 名称正确且 SQL Server 配置为允许远程 连接。 (提供者:命名管道提供者,错误:40 - 无法 打开与 SQL Server 的连接)
--------------- 好的
代码:
this.Cursor = Cursors.WaitCursor;
try
{
// Insert into database
sqlconnection = new SqlConnection(@"Data Source=" + Properties.Settings.Default.DBHost + ";Initial Catalog=BLAHBLAH;Persist Security Info=True;User ID=" + Properties.Settings.Default.DBUserName + ";Password=" + Properties.Settings.Default.DBPassword + ";");
sqlconnection.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = sqlconnection;
int count = 0;
foreach (var item in files)
{
cmd.CommandText = @"insert into Images (Name, Games) values ('" + item.Value + "', '" + games + "')";
cmd.ExecuteNonQuery();
count++;
}
}
catch(Exception exception)
{
MessageBox.Show(exception.Message);
}
sqlconnection.Close();
this.Cursor = Cursors.Default;
【问题讨论】:
-
网络错误?可能?你有没有调试过它可以打开一个连接?你能手动打开一个连接吗?
-
还是 Sql 注入的受害者?
-
确定你启动了
SQL Server (MSSQLSERVER)服务? -
在机器上创建一个test.udl文件并检查SQL DB连接。也请使用参数化查询:)
-
你能手动打开你的Sql server吗?如果您可以然后检查您的 Sql 连接字符串。它可能有问题。
标签: c# sql .net sql-server winforms