Ver Mensaje Individual
  #7  
Antiguo 04-11-2022
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Reputación: 19
kuan-yiu Va camino a la fama
Te estás complicando demasiado por querer ir rápido. Como te han recomendado te iría bien un repaso general sobre SQL y componentes Delphhi que manejan SQL.
Prueba cada sentencia SQL contra la BD que usas, consulta la ayuda de Delphi, la de la BD, busca en Google...

Siempre es bueno parametrizar (o sea poner "=:") porque evita ciertos errores y problemas.

Siempre que lo sepas PASA EL PARÁMETRO CON TIPO.
Usar ".Value" solo para casos muy concretos en los que no puedas concretar, porque sino puedes tener problemas con los nulos, los blancos... y deberías especificar el tipo de parámetro lo que lo complica todo mucho más y resulta innecesario para lo que necesitas.

".AsString" si es string, varchar...
".AsInteger" si es integer...
".AsFloat" si es extended, double...
Código Delphi [-]
// Aquí defines la consulta
ADOQueryUpdate.SQL.Clear;
ADOQueryUpdate.SQL.ADD('update tiket set Estatus = :Estatus,Usuario= :Usuario WHERE Item = :Item');
ADOQueryUpdate.prepare; // Con esto le dices que la vas a usar muchas veces

// Ejecutas SOLO esto por cada modificación
ADOQueryUpdate.ParamByName ('Estatus').AsString:= 'OLD';
ADOQueryUpdate.ParamByName ('Usuario').AsString:= Label4.Caption;
// Si 'Item' es tipo entero o float ponlo y transforma el caption como corresponda: strToInt(Label3.Caption)
ADOQueryUpdate.ParamByName ('Item').AsString:= Label3.Caption; 
ADOQueryUpdate.ExecSQL;
Responder Con Cita