Reputation: 2212
Can anybody please tell me what I am doing wrong here? It gives me Invalid Insert INTO exception.
internal static bool CheckInKey(string keyID, int cabinetID, int drawerNumber, string row, int column)
{
cmd.Parameters.Clear();
cmd.CommandText = "Insert into CheckInCheckOut(KeyID,CabinetID,DrawerNumber,Row,Column,CheckInTime) values(?,?,?,?,?,?)";
cmd.Parameters.AddWithValue("?", keyID);
cmd.Parameters.AddWithValue("?", cabinetID);
cmd.Parameters.AddWithValue("?", drawerNumber);
cmd.Parameters.AddWithValue("?", row);
cmd.Parameters.AddWithValue("?", column);
cmd.Parameters.AddWithValue("?", DateTime.Today.ToString());
conn.Open();
int rowsAffected = cmd.ExecuteNonQuery();
conn.Close();
if (rowsAffected == 1)
return true;
else
return false;
}
Here is my Access Table snapshot:
Upvotes: 0
Views: 59
Reputation: 216243
COLUMN
is a reserved keyword in MS-Access.
To use it from C# code you need to encapsulate it in square brackets
cmd.CommandText = @"Insert into CheckInCheckOut
(KeyID,CabinetID,DrawerNumber,Row,[Column],CheckInTime)
values(?,?,?,?,?,?)";
Upvotes: 4