C# 不确定如何初始化数据库连接
我正在尝试将名为Questions的SQL数据库表插入,每当我单击按钮时,就会出现下面的错误,我不确定如何解决此问题,因为我认为我只需要打开数据库连接,然后再关闭它 任何帮助都会很有帮助C# 不确定如何初始化数据库连接,c#,button,database-connection,sql-insert,C#,Button,Database Connection,Sql Insert,我正在尝试将名为Questions的SQL数据库表插入,每当我单击按钮时,就会出现下面的错误,我不确定如何解决此问题,因为我认为我只需要打开数据库连接,然后再关闭它 任何帮助都会很有帮助 private void button1_Click(object sender, EventArgs e) { string connectionString = ConfigurationManager.ConnectionStrings["myconnectionstring
private void button1_Click(object sender, EventArgs e)
{
string connectionString = ConfigurationManager.ConnectionStrings["myconnectionstring"].ConnectionString;
SqlConnection connect = new SqlConnection(connectionString);
connect.Open();
SqlCommand command1 = new SqlCommand("INSERT INTO Questions ([Question Type]) VALUES (1)");
command1.ExecuteNonQuery();
connect.Close();
}
System.Data.dll中发生类型为“System.InvalidOperationException”的未处理异常
其他信息:ExecuteOnQuery:尚未初始化连接属性
错误信息清晰 您没有连接
SqlCommand
和SqlConnection
。将连接用作命令中的第二个参数,如
SqlCommand command1 = new SqlCommand("INSERT INTO Questions ([Question Type]) VALUES (1)",
connect);
或者,您可以在基于连接创建SqlCommand
时使用。还可以使用自动处理连接和命令,而不是手动调用.Close()
方法
可能的最佳方式
private void button1_Click(object sender, EventArgs e)
{
string connectionString = ConfigurationManager.ConnectionStrings["myconnectionstring"].ConnectionString;
using(var connect = new SqlConnection(connectionString))
using(var command1 = connect.CreateCommand())
{
command1.CommandText = "INSERT INTO Questions ([Question Type]) VALUES (1)";
connect.Open();
command1.ExecuteNonQuery();
}
}
非常感谢你!如果可能的话,我会勾选这个答案。如果你不介意的话,请给我举一个CreateCommand的例子好吗?@mot375我刚刚做了。看一看。