none
Error Instrucciones update RRS feed

  • Pregunta

  • UPDATE ExperenciaOperarioTecnologia SET " + CodTecnologia + " == " + ExpTecnologia + " WHERE CodOperario = '" + CodOperario + "'";
    OleDbCommand CommandExpUpdateTecnologia = new OleDbCommand(queryExpUpdateTecnologia, frmInicio.conexion);
                    CommandExpUpdateTecnologia.ExecuteNonQuery();


    UPDATE ExperenciaOperarioTecnologia SET MES == 0,0116666666666667 WHERE CodOperario = 'JPC'"

    OleDb Exception : Error de sintaxis en la instrucción UPDATE.

    Porque me reporta este error? Los campos en la BBDD los tengo como doble.

    Un saludo, gracias de antemano!

    viernes, 26 de febrero de 2016 8:10

Todas las respuestas

  • Hola:

    Prueba de cambiar el == por uno solo:

    UPDATE ExperenciaOperarioTecnologia SET MES = 0,0116666666666667 WHERE CodOperario = 'JPC'"

    También puedes tener problemas por el separador de decimales, quizás sea el punto:

    UPDATE ExperenciaOperarioTecnologia SET MES = 0.0116666666666667 WHERE CodOperario = 'JPC'

    Saludos


    • Editado LG DES viernes, 26 de febrero de 2016 8:17
    viernes, 26 de febrero de 2016 8:17
  • Como verás en las respuestas del foro, se te va a recomendar que uses consultas parametrizadas para evitar precisamente lo que te está ocurriendo y evitar SQL Injection. Evita la concatenación

    Es una muy buena práctica

    Te paso ejemplo para que lo veas

    string query = "UPDATE ExperenciaOperarioTecnologia SET  CodTecnologia == ? WHERE CodOperario = ?";
    
    using(OleDbCommand CommandExpUpdateTecnologia = new OleDbCommand(queryExpUpdateTecnologia, frmInicio.conexion))
    {
    	CommandExpUpdateTecnologia.Parameters.AddWithValue("@ExpTecnologia", ExpTecnologia);
    	CommandExpUpdateTecnologia.Parameters.AddWithValue("@CodOperario", CodOperario);
    	
    	CommandExpUpdateTecnologia.ExecuteNonQuery();
    }
    


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    viernes, 26 de febrero de 2016 9:15