0

我在 c# 中为 mdb 文件编写了一个字符串INSERT,但在代码中捕获了错误“插入语句中的语法错误”。
我直接在其中测试字符串Microsoft Access 2007并插入查询,没有错误。

string qu = "INSERT INTO Reports ( docid, biopsy, normal, section, subsection, title, items, [text] ) VALUES (21, False, False, 'Recommendation', 'a', 'Injection', 'a', 'a');";
OleDbCommand cmd = new OleDbCommand();
OleDbDataAdapter da = new OleDbDataAdapter();
DataSet ds = new DataSet();
OleDbConnection con = Model.getDataConnection();

cmd.Connection = con;
cmd.CommandText = qu;
con.Open();
try
{
    cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
    System.Windows.Forms.MessageBox.Show("data error!\n" + ex.Message);
    return false;
}

在不幸的编辑之前显示正确括号的原始字符串。

string qu = "INSERT INTO Reports ( docid, biopsy, normal, [section], subsection, title, items, [text] ) VALUES (21, False, False, 'Recommendation', '', 'Injection', '', '');";
4

1 回答 1

0

报告部分文本都是保留字。在 SQL 语句中将它们括在括号中。

INSERT INTO [Reports] (
    docid, biopsy, normal, [section], subsection, title, items, [text])
VALUES (
    21, False, False, 'Recommendation', 'a', 'Injection', 'a', 'a');
于 2013-02-08T18:49:18.150 回答