将数据插入数据库时​​出现C#错误

时间:2016-12-28 05:20:35

标签: c# ms-access ms-access-2007

我想将数据插入.MDB文件,但是我收到此错误:

Error

这是我的.MDB表:

My Database

这是我的代码:

private void btn_Save_Click(object sender, EventArgs e)
{
    try
    {
        string sql = string.Format("insert into Input (Tgl, p, l, t, Shift, Grup, Good Board, Reject Board, Wood, Emulsion, Glue, NH4CL, Urea, Rambung, Meranti, Veneer, Potongan, Lamtoro, Log End, Saw Dust, Sembarang, MDF Screen Dust, Kemiri, Slab Durian, Flakes) VALUES ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}','{19}','{20}','{21}','{22}','{23}','{24}')", dateTimePicker1.Text, txt_p.Text, txt_l.Text, txt_t.Text, txt_Shift, txt_Group, txt_GoodBoard.Text, txt_RejectBoard.Text, txt_Wood.Text, txt_Emulsi.Text, txt_Glue.Text, txt_NH4CL.Text, txt_Urea.Text, txt_Rambung.Text, txt_Meranti.Text, txt_Veneer.Text, txt_Potongan.Text, txt_Lamtoro.Text, txt_LogEnd.Text, txt_SawDust.Text, txt_Sembarang.Text, txt_MDFScreenDust.Text, txt_Kemiri.Text, txt_SlabDurian.Text, txt_Flakes.Text);

        OleDbConnection conn = new OleDbConnection(koneksi);
        conn.Open();

        OleDbCommand cmd = new OleDbCommand(sql, conn);
        cmd.ExecuteNonQuery();

        conn.Close();
        MessageBox.Show("Data Page 1");
    }
    catch (OleDbException salah)
    {
        MessageBox.Show(salah.ToString());
    }
}

当我插入3列时,它可以工作,但是当我想插入许多列时,代码不起作用。

我不知道我的陈述会出现什么问题。我已经搜索了很多类似的问题,但仍然不知道我的代码有什么问题。任何人都可以帮我解决这个问题吗?或者是否有人有修复我的代码的建议?这是我第一次使用.MDB数据库文件。

由于

2 个答案:

答案 0 :(得分:0)

尝试将insert into Input ...替换为INSERT INTO [Input] ...

答案 1 :(得分:0)

我认为错误是保留字'input'应该重命名它。 ODBC Reserved Keywords只是为了澄清之前的答案。