SqlConnection CON = new SqlConnection("Data Source=(LocalDB)\\MSSQLLocalDB;AttachDbFilename=D:\\VS_project\\WindowsFormsApplication1\\WindowsFormsApplication1\\myInfo.mdf;Integrated Security=True");
private void button4_Click(object sender, EventArgs e)
{
try
{
CON.Open();
SqlDataAdapter SDA = new SqlDataAdapter("INSERT INTO myInfo(Name,Address,Gender,LangKnownHindi)VALUES('" + textBox1.Text + "','" + textBox2.Text + "','" + Gender + "','" + LANG_Hin + "')", CON);
SDA.SelectCommand.ExecuteNonQuery();
CON.Close();
MessageBox.Show("Saved SuccessFully!!!!!");
}
catch (SqlException ex)
{
MessageBox.Show(ex.Message);
}
}
当我运行这个程序,我得到:无法连接到数据库,让System.InvalidOperationException
类型的未处理的异常“System.InvalidOperationException” 出现在system.data.dll。附加信息:连接 未关闭。连接的当前状态已打开。
你将你的Sql连接实例保存在类范围中,如果你有任何e在ExecuteNonQuery期间出现错误,显示一个消息框但连接保持打开状态。如果在每个ExecuteNonQuery之后关闭连接,为什么不在声明内部声明CON(变量名!)? –
虽然这样做,请尝试封装它在使用语句,以确保连接关闭。此外,您只是执行非查询,在这种情况下,不需要SqlDataAdapter。只需创建一个SqlCommand并通过该实例执行非查询。 –
当我运行我的程序并单击提交按钮时,它显示:无效的对象名称'myInfo'。 – Prince