miércoles, 21 de octubre de 2009

ERROR [07002] [Microsoft][Controlador ODBC Microsoft Access] (resuelto)

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!

Technorati Tags: ,,

No hay comentarios: