我在.NET 2.0中使用C#,并试图访问和操作数据库。我可以从数据库,因为我想读多次和一切正常,但只要我尝试插入一个项目,我得到了以下错误消息:C#SQL查询异常
ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.
我想看看这件事,但我找到的修复程序无效或不适用。
我有以下代码:
using (SqlConnection conn = new SqlConnection(SQLConnectionString))
{
SqlDataAdapter dataAdapter = new SqlDataAdapter("SELECT [Col1] FROM [Table1] WHERE [Col2]='" + val2 + "'", conn);
DataSet dataSet = new DataSet();
dataAdapter.Fill(dataSet);
if (dataSet.Tables.Count == 0 || dataSet.Tables[0].Rows.Count != 1)
{
SqlCommand cmd = new SqlCommand("INSERT INTO [Table1] ([Col1], [Col2]) VALUES ('" + val1 + "', '" + val2 + "')", conn);
cmd.ExecuteNonQuery();
}
}
注:我敢肯定,我的权限设置不当,因为Visual Studio可以用相同的SQLConnectionString插入。另外,我对数据库还是一个相当新的东西,所以如果我做了任何错误的事情,请告诉我。
谢谢。
出于某种原因,我认为“使用”命令处理打开和关闭,而不是只是关闭。这工作,谢谢。 – user108088 2010-07-19 08:25:20