El problema.
OdbcCommand cmd = MyConx.CreateCommand();
cmd.CommandText = "INSERT INTO miTabla (campo1, campo2, campo3) VALUES(@campo1, @campo2, @campo3)";
cmd.Parameters.AddWithValue("@campo1", "valor campo 1");
cmd.Parameters.AddWithValue("@campo2", 2);
cmd.Parameters.AddWithValue("@campo3", DateTime.Now);
cmd.ExecuteNonQuery();
El error.
ERROR [07002] [Microsoft][Controlador ODBC Microsoft Access] Pocos parámetros. Se esperaba 3.
Mi respuesta.
Que pasa? Ya agregue los tres parámetros! Porque .net no me quiere?
La Solucion.
OdbcCommand cmd = MyConx.CreateCommand();
cmd.CommandText = "INSERT INTO miTabla (campo1, campo2, campo3) VALUES(?, ?, ?)";
cmd.Parameters.AddWithValue("@campo1", "valor campo 1");
cmd.Parameters.AddWithValue("@campo2", 2);
cmd.Parameters.AddWithValue("@campo3", DateTime.Now);
cmd.ExecuteNonQuery();
la razón.
Access no soporta los parámetros nombrados con @
Los dejo con este post un poco corto pero conciso.
Saludes queridos lectores!
No hay comentarios:
Publicar un comentario