1

我从这段代码中得到一个异常,说我的 sql 语法有错误。此外,它说这个错误在第 1 行,这是没有意义的,因为第 1 行刚刚说: using System; 调试代码用了一个多小时,搞不明白。下面是代码。任何人都可以看到错误吗?谢谢

public void SaveReferenceToDatabase(string billedNavn, string placering, string description, DateTime date)
    {
        Sql sql = new Sql();

        string query = "INSERT INTO GalleryImages (BilledNavn, Placering, Beskrivelse, Dato)" + 
                       "VALUES (?billedNavn, ?placering, ?description, ?date";

        MySqlCommand cmd = sql.Command(query);

        cmd.Parameters.AddWithValue("billedNavn", billedNavn);
        cmd.Parameters.AddWithValue("placering", placering);
        cmd.Parameters.AddWithValue("description", description);
        cmd.Parameters.AddWithValue("date", date);

        sql.ConnOpen();
        cmd.ExecuteNonQuery();

        sql.ConnClose();
    }

附言。执行 cmd.ExecuteNonQuery() 时抛出异常

4

1 回答 1

7

您缺少SQL 代码(SQL 代码的第二行)子句的结束)values()

错误消息指出错误在 SQL 代码的第一行,因为您构建的 SQL 字符串中没有换行符(这完全没问题,只是在搜索错误位置时可能有点烦人) .

于 2013-08-16T23:16:29.313 回答