Delphi - Update con Zeos

 
Vista:

Update con Zeos

Publicado por Frasko (25 intervenciones) el 22/05/2006 11:58:58
¡Hola a todos!

Después de mucho buscar, no he encontrado ningún post en el foro que explique la forma de hacer un update con los componentes zeos.

Estoy usando dichos componentes para una aplicación y me van genial a la hora de hacer consultas. A la hora de hacer un update me he visto que no sabía como era. A través de código, yo puedo ejecutar el query haciendo un 'query.open' habiendo añadido antes la sentencia sql, si no recuerdo mal.

Como ejecuto el componente para hacer el update, insert...??

Muchas gracias por la ayuda!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Update con Zeos

Publicado por BigLuis (713 intervenciones) el 23/05/2006 15:16:27
Se hace de la misma forma que con cualquier otro componente SQl por ejemplo:
QueryUpdate.Close;
QueryUpdate.SQL.Clear;
QueryUpdate.SQL.Add('INSERT INTO meses (Id_meses,mes,ano) VALUES (NULL,:mess,:anoss);');
QueryUpdate.Parambyname('mess').asinteger:=iimes;
QueryUpdate.Parambyname('anoss').asinteger:=iiano;
QueryUpdate.ExecSQL;
y para el UPDATE igual pero con la contruccion UPDATE. Al final hay que utilizar el procedimiento ExecSQL y no Open.
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Update con Zeos

Publicado por Frasko (25 intervenciones) el 23/05/2006 18:08:29
Gracias BigLuis, he avanzado más pero ahora me da un fallo que no se porque es. En vez de añadir las sentencias sql por código las meto a través de formulario y meto las siguientes sentencias:

update alumnos set direccion= :direccion where idalumnos= :usu;
update alumnos set numero= :numero where idalumnos= :usu;
update alumnos set codigopostal= :cp where idalumnos= :usu;
update alumnos set localidad= :localidad where idalumnos= :usu;
update alumnos set provincia= :provincia where idalumnos= :usu;
update alumnos set fechanacimiento= :fechanacimiento where idalumnos= :usu;
update alumnos set telefono= :telefono where idalumnos= :usu;
update alumnos set email= :email where idalumnos= :usu;
update alumnos set comentario= :comentario where idalumnos= :usu;

Después, al pulsar un botón me realiza el siguiente script:

QueryUpdateQ.ParamByName('usu').AsString:=usu;
QueryUpdateQ.ParamByName('direccion').AsString:=direccion.text;
QueryUpdateQ.ParamByName('numero').AsString:=numero.text;
QueryUpdateQ.ParamByName('cp').AsString:=cp.text;
QueryUpdateQ.ParamByName('localidad').AsString:=localidad.text;
QueryUpdateQ.ParamByName('provincia').AsString:=provincia.text;
QueryUpdateQ.ParamByName('fechanacimiento').AsString:=fechanacimiento.text;
QueryUpdateQ.ParamByName('telefono').AsString:=telefono.Text;
QueryUpdateQ.ParamByName('email').AsString:=email.text;
QueryUpdateQ.ParamByName('comentario').AsString:=comentarios.text;
QueryUpdateQ.ExecSQL;

No se si es porque meto varias lineas pero me da fallo. Dice que es fallo de sintaxis de MySQL pero yo no veo ningún fallo ahí.

Muchas gracias por la ayuda, un saludo!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Update con Zeos

Publicado por BigLuis (713 intervenciones) el 23/05/2006 19:02:20
Yo te propongo la siguiente solucion y ahorraras lines de codigo y este sera mas comprensible. No gtienes obligacion de actualizar campo a campo:

update alumnos set
direccion= :direccion,
numero= :numero,
codigopostal= :cp,
localidad= :localidad,
provincia= :provincia,
fechanacimiento= :fechanacimiento,
telefono= :telefono,
email= :email,
comentario= :comentario
where idalumnos= :usu;

Después, al pulsar un botón me realiza el siguiente script:

QueryUpdateQ.ParamByName('usu').AsString:=usu;
QueryUpdateQ.ParamByName('direccion').AsString:=direccion.text;
QueryUpdateQ.ParamByName('numero').AsString:=numero.text;
QueryUpdateQ.ParamByName('cp').AsString:=cp.text;
QueryUpdateQ.ParamByName('localidad').AsString:=localidad.text;
QueryUpdateQ.ParamByName('provincia').AsString:=provincia.text;
QueryUpdateQ.ParamByName('fechanacimiento').AsString:=fechanacimiento.text;
QueryUpdateQ.ParamByName('telefono').AsString:=telefono.Text;
QueryUpdateQ.ParamByName('email').AsString:=email.text;
QueryUpdateQ.ParamByName('comentario').AsString:=comentarios.text;
QueryUpdateQ.ExecSQL;

No creo que ahora te falle
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Update con Zeos

Publicado por Frasko (25 intervenciones) el 24/05/2006 00:03:16
Perfectamente BigLuis!!Eres un genio... Un saludo y gracias por la ayuda!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar