Mon code est ci-dessous. J'ai une méthode où je passe trois paramètres et ils sont écrits dans une table de base de données MS Access. Cependant, je reçois toujours un message d'erreur de syntaxe. Quelqu'un peut-il me dire pourquoi? J'ai eu cet exemple sur internet."Erreur de syntaxe dans l'instruction INSERT INTO". Pourquoi?
private static void insertRecord(string day, int hour, int loadKW)
{
string connString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\LoadForecastDB.accdb";
OleDbConnection conn = new OleDbConnection(connString);
string ins = @"INSERT INTO Forecasts (Day, Hour, Load) VALUES (?,?,?)";
OleDbCommand cmd = new OleDbCommand(ins, conn);
cmd.Parameters.Add("@day", OleDbType.VarChar).Value = day;
cmd.Parameters.Add("@hour", OleDbType.Integer).Value = hour;
cmd.Parameters.Add("@load", OleDbType.Integer).Value = loadKW;
conn.Open();
try
{
int count = cmd.ExecuteNonQuery();
}
catch (OleDbException ex)
{
Console.WriteLine(ex.Message);
}
finally
{
conn.Close();
}
}
Avez-vous l'erreur de syntaxe au moment de la compilation ou de l'exécution? Pouvez-vous fournir plus d'informations sur l'erreur? –
Je reçois l'erreur au moment de l'exécution. Merci! – Kevin