小编典典

INSERT INTO语句出现问题

sql

我似乎无法弄清楚为什么我会继续得到一个Syntax error in INSERT INTO statement

代码如下。

static void ABSChangeEventsTable(string ControlNumber, string CurrentStatus)
{
   using (var connection = new OleDbConnection(strAccessConnAbstracting))
   using (var command = connection.CreateCommand())
   {
      connection.Open();

      command.CommandText = "INSERT INTO Events (Date_Time, Details, Regarding, User, Control_Number) VALUES (@Date_Time, @Details, @Regarding, @User, @Control_Number)";

      command.Parameters.AddWithValue("@Date_Time", DateTime.Now);
      command.Parameters.AddWithValue("@Details", "OLD:"+CurrentStatus+" NEW: Received Fax");
      command.Parameters.AddWithValue("@Regarding", "Status Changed");
      command.Parameters.AddWithValue("@User", "System");
      command.Parameters.AddWithValue("@Control_Number", ControlNumber);

      try
      {
         command.ExecuteNonQuery();
      }
      catch (System.Exception ex)
      {                   
         throw;
      }
   }            
}

阅读 148

收藏
2021-04-14

共1个答案

小编典典

User 是保留关键字,您需要将其包装在方括号中:

INSERT INTO Events (Date_Time, Details, Regarding, [User], Control_Number) VALUES (@Date_Time, @Details, @Regarding, @User, @Control_Number)

我建议重命名该列,以避免每次引用时都使用方括号。

2021-04-14