SqlCommand INSERT查询不会将数据插入数据库

时间:2016-08-09 09:28:44

标签: c# sql .net database sqlcommand

我正在研究Visual Studio 2013

在下面的代码中,MessageBox.Show("Connected to database")显示正确,但SQL查询未将数据插入数据库表。

当我手动插入数据时,它会毫无问题地插入。但不幸的是,数据无法插入button_click命令。

private void DataAdd_Load(object sender, EventArgs e)
{
    try
    {
        conn = new SqlConnection("Data Source=(LocalDB)\\MSSQLLocalDB;AttachDbFilename=Pathname;Integrated Security=True;Connect Timeout=30");
        conn.Open();
        MessageBox.Show("Connected to database");
        cmd = new SqlCommand("INSERT INTO datains (name, dob, gender, occupation, height, weight, relation, polexpo) values('abc', '22-Aug-2001', 'Male', 'qwe2', '23', '431', 'qw23e', 'asqwed');", conn);
    }
    catch (Exception e1)
    {
        MessageBox.Show("Connection failed");
    }
}

我在这里做错了什么或我错过了什么?

2 个答案:

答案 0 :(得分:5)

您忘记执行查询:

cmd.ExecuteNonQuery();

最好在工作完成后关闭连接:

conn.Close();

答案 1 :(得分:1)

您必须运行cmd的ExecuteNonQuery()方法才能使其正常工作,但是建议将连接和命令包装到using语句中以便它们被处理掉(连接也应该是明确关闭)