Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-10-2011
Efren2006 Efren2006 is offline
Miembro
 
Registrado: feb 2006
Posts: 172
Poder: 19
Efren2006 Va por buen camino
Saber Fecha de la Ultima modificación a un Procedimiento Almacenado

Buenas Noches

Quería saber si existe alguna manera de Saber en Firebird la Fecha de la Ultima modificación que uno le realice a un procedimiento Almacenado, Tabla, Vista , Etc ?

Gracias de Antemano.
Responder Con Cita
  #2  
Antiguo 28-10-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Quizá esto te sirva.

Los procedimientos almacenados se guardan en una de las llamadas tablas del sistema: RDB$Procedures. Al menos en Firebird 1.5, no veo que este tipo de tablas tengan un campo que almacene la fecha y hora de creación o última modificación. Lo bueno es que Firebird permite agregarles más campos.

Hice una prueba con la siguiente macroinstrucción (script en inglés ), y me resultó efectiva:

Código SQL [-]
-- Agregamos un campo de fecha y hora a la tabla de los procedimientos 
Alter Table RDB$Procedures Add FechaModificacion TimeStamp;  
/* Creamos disparador para alimentar ese campo cuando un procedimiento sea creado o modificado */ 
Create Trigger tgbiuRDB$ProceduresFechaM From RDB$Procedures
Active Before Insert Or Update Position 0 
As
Begin
  New.FechaModificacion = Current_TimeStamp; 
End;

Haciendo lo mismo, cada vez que desees conocer la fecha y hora de la última modificación de un procedimiento almacenado, sólo tendrías que realizar la consulta:

Código SQL [-]
Select FechaModificacion From RDB$Procedures   
Where RDB$Procedure_Name = NombreDelSP

Desde luego, los disparadores no son retroactivos. Tendrás que provocar un Alter Procedure para cada procedimiento ya existente a fin de rellenar el nuevo campo o, si prefieres, puedes establecerlo directamente con una sentencia "Update RDB$Procedures Set FechaModificacion =...".

Asimismo, existen otras tablas del sistema donde se guardan las tablas y demás objetos de la base de datos, a las cuales puedes aplicar la misma técnica.

Saludos.

Al González.

Última edición por Casimiro Notevi fecha: 29-10-2011 a las 20:01:36.
Responder Con Cita
  #3  
Antiguo 29-10-2011
Efren2006 Efren2006 is offline
Miembro
 
Registrado: feb 2006
Posts: 172
Poder: 19
Efren2006 Va por buen camino
Amigo Al González

Gracias por el aporte, pensé que ya podía existir, en mi caso muy particular necesito reconstruir una BD con las ultimas modificaciones realizadas partiendo de otras, pero lo tomare en cuenta para próximas actualizaciones..

Saludos
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
Obtener Fecha y Hora en un Procedimiento Almacenado Efren2006 SQL 2 17-01-2009 15:04:38
Procedimiento almacenado con fecha VRO MySQL 8 17-10-2007 08:23:09
Fecha modificacion Procedimiento almacenado lgarcia SQL 2 28-05-2007 21:33:54
Última Modificación de un archivo [Gunman] API de Windows 1 15-11-2005 22:39:01
como Leer la fecha de " última Modificación " de un archivo. JuanErasmo C++ Builder 2 07-10-2005 18:28:19


La franja horaria es GMT +2. Ahora son las 15:33:48.


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