Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-11-2022
giantonti1801 giantonti1801 is offline
Miembro
 
Registrado: oct 2022
Posts: 143
Poder: 2
giantonti1801 Va por buen camino
Update fecha actual

hola amigo, quiero al momento de hace un update colocar tambien que me guarde DATETIME() NOW

Código Delphi [-]
ADOQueryUpdate.Open;
            ADOQueryUpdate.SQL.ADD('update tiket set Estatus = :Estatus,Usuario= :Usuario WHERE Item = :Item');
            ADOQueryUpdate.Parameters.ParamByName ('Estatus').Value := 'OLD';
            ADOQueryUpdate.Parameters.ParamByName ('Usuario').value := Label4.Caption;
            ADOQueryUpdate.Parameters.ParamByName ('Item').value := Label3.Caption;
            ADOQueryUpdate.ExecSQL;

quiero incorporarlo aqui en esta instrucion mi campo en la base de datos es de tipo TIMESTAMP yo se que la mejor forma de hacer es a travez de un tiger en la base de datos pero no supe hacerlo. Cabe destacar que ya tengo un campo de la base de datos de tipo timestamp la cual se guarda la fecha y hora al momento de crear un registro, pero quiero hacer uno tambien que guarde la fecha y la hora de las modificaciones.
Responder Con Cita
  #2  
Antiguo 04-11-2022
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.741
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Para que guarde la fecha de modificación lo mejor, como comentas, es hacerlo por trigger.
Suele ser sencillo. Por ejemplo, en Firebird sería algo así
Código SQL [-]
create trigger ticket_bu0 for ticket active before update position 0
as
begin
    new.fecha_ultima_modificacion = 'NOW';
end

Si lo quieres hacer en el update sería parecido:
Código Delphi [-]
ADOQueryUpdate.SQL.ADD('update tiket set Estatus = :Estatus,Usuario= :Usuario, fecha_ultima_modificacion = ''NOW'' WHERE Item = :Item');

A tener en cuenta: ¿Qué fecha deseas utilizar?
La del servidor de base de datos o la del ordenador que ejecuta la aplicación.
Puede ser que el ordenador esté en España y el servidor hospedado en Estados Unidos, con una diferencia horaria que necesitas tener en consideración.

Si deseas la fecha del ordenador, deberás pasarla por parámetro:
Código Delphi [-]
ADOQueryUpdate.SQL.ADD('update tiket set Estatus = :Estatus,Usuario= :Usuario, fecha_ultima_modificacion = :fecha_ultima_modificacion WHERE Item = :Item');
...
ADOQueryUpdate.Parameters.ParamByName ('fecha_ultima_modificacion').Value := Now;
Responder Con Cita
  #3  
Antiguo 04-11-2022
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.099
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por giantonti1801 Ver Mensaje
...
Creo que ya es momento de que le eches un vistazo a nuestra guía de estilo, gracias.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
No me funciona el keyword shortcut cuando el programa esta inactivo o segundo plano!! Jorgeeyv Varios 6 06-03-2018 10:24:37
Update con Inner Join Funciona en Access pero no en firebird Acanol Firebird e Interbase 7 27-05-2012 01:25:48
funciona bien en windows 7 64b pero en XP no funciona ASAPLTDA Varios 5 06-05-2011 16:24:50
No me funciona UPDATE maravert PHP 4 26-11-2009 17:21:37
Update!!!, pero solo para un registro ELINK Firebird e Interbase 6 08-01-2008 20:26:41


La franja horaria es GMT +2. Ahora son las 22:32:33.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi