EDITO: algo que se me pasó ( no se si es relevante ) está hoja solo tiene esos dos campos "Correo" y "verificado" ( alfanumerico y numerico respectivamente )
les paso como lo estoy haciendo y el error que me marca.
Código C#:
Ver original
using (OleDbConnection objConn = new OleDbConnection(Source.ToString())) { try { objConn.Open(); OleDbCommand objCmdSelect = new OleDbCommand(@"update [Hoja1$] set verificado = " + 1 + " where Correo = '" + usuario.Correo + "' and verificado = 0;", objConn); objCmdSelect.CommandType = System.Data.CommandType.Text; objCmdSelect.ExecuteNonQuery(); } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { objConn.Close(); } }
también lo he intentado así:
Código C#:
Ver original
try { objConn.Open(); OleDbCommand objCmdSelect = new OleDbCommand(@"update [Hoja1$] set verificado = 1 where Correo = @Correo and verificado = 0;", objConn); objCmdSelect.Parameters.Add(new OleDbParameter("@Correo", OleDbType.VarChar) { Value = usuario.Correo }); objCmdSelect.ExecuteNonQuery(); } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { objConn.Close(); }
pero en ambos casos obtengo este error:
Cita:
esto es lo que tiene en la "exception.ToString"No se han especificado valores para algunos de los parámetros requeridos.
Cita:
NOTA 1: tengo operaciones de Insert y Select y estas funcionan perfectamente.System.Data.OleDb.OleDbException (0x80040E10): No se han especificado valores para algunos de los parámetros requeridos.
en System.Data.OleDb.OleDbCommand.ExecuteCommandTextE rrorHandling(OleDbHResult hr)
en System.Data.OleDb.OleDbCommand.ExecuteCommandTextF orSingleResult(tagDBPARAMS dbParams, Object& executeResult)
en System.Data.OleDb.OleDbCommand.ExecuteCommandText( Object& executeResult)
en System.Data.OleDb.OleDbCommand.ExecuteCommand(Comm andBehavior behavior, Object& executeResult)
en System.Data.OleDb.OleDbCommand.ExecuteReaderIntern al(CommandBehavior behavior, String method)
en System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
en registrosIntellegoToID.Program.Verificado(oleConne ction Source, Usuario usuario) en d:\www\Apps\registros\registros\Program.cs:línea 250
en System.Data.OleDb.OleDbCommand.ExecuteCommandTextE rrorHandling(OleDbHResult hr)
en System.Data.OleDb.OleDbCommand.ExecuteCommandTextF orSingleResult(tagDBPARAMS dbParams, Object& executeResult)
en System.Data.OleDb.OleDbCommand.ExecuteCommandText( Object& executeResult)
en System.Data.OleDb.OleDbCommand.ExecuteCommand(Comm andBehavior behavior, Object& executeResult)
en System.Data.OleDb.OleDbCommand.ExecuteReaderIntern al(CommandBehavior behavior, String method)
en System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
en registrosIntellegoToID.Program.Verificado(oleConne ction Source, Usuario usuario) en d:\www\Apps\registros\registros\Program.cs:línea 250
NOTA 2: la linea 250 que marca la excepcion es la instruccion "ExecuteNonQuery" del comando
Saludos y gracias por su tiempo.