fecha exacta de modificacion

03/06/2004 - 09:26 por Jomaweb | Informe spam
Hola

¿es posible saber la fecha exacta de la modificación de un registro de una
tabla sin haberlo programado con un trigger o algo así?
No había planificado la auditoría y ahora necesito ese dato ¿mirando en el
registro sería posible?
Necesito urgentemente saber qué dia (y a qué hora) se hizo un update en un
registro y no lo tengo programado.


Gracias mil


PD: A partir de ahora programaré auditoría para todo.
 

Leer las respuestas

#1 Carlos Sacristan
03/06/2004 - 10:17 | Informe spam
Complicado, bastante complicado si no implementaste una auditoría
previamente. De todos modos, te pego una respuesta de Sergio Monteiro del
20/01/2004 (con tu permiso, Sergio):

*****************************************************************
Es posible si tenes la base de datos en modo de recuperacion BulkCopy o
Full, saber la hora que se hizo la operacion y el UID de quien la hizo.
Tenes sólo que usar un par de comandos que solian no ser documentados, pero
que ya se recontraconoce.

dbcc traceon(3604)
dbcc log(nobredeldb, -1)

y buscar por el OPERATION= LOP_BEGIN_XACT, a que se siga una con
OPERATION=LOP_MARK_DDL y otra con LOP_MODIFY_ROW, y que la columna CONTEXT
sea LCX_SCHEMA_VERSION y el OBJECT NAME sea sysobjects.

Bueno, un poco más abajo vas a encontrar una OPERATION=LOP_INSERT_ROWS en el
OBJECT NAME syscolumns y INDEX NAME ncsyscolumns. La columna Row Data
contiene el nombre del campo insertado (o borrado), en formato Hexadecimal
NVARCHAR.

Si todo eso se dá, volve al registro de OPERATION=LOP_BEGIN_XACT, y busca la
columna UID. Alli tenes el User ID del usuário que inicio la transacción.

*****************************************************************

También puedes comprar la herramienta de tratamiento del log de
lumigent: http://www.lumigent.com, pero es de pago


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

Por favor, responder únicamente al foro
Se agradece la inclusión de sentencias DDL


"Jomaweb" escribió en el mensaje
news:#
Hola

¿es posible saber la fecha exacta de la modificación de un registro de una
tabla sin haberlo programado con un trigger o algo así?
No había planificado la auditoría y ahora necesito ese dato ¿mirando en el
registro sería posible?
Necesito urgentemente saber qué dia (y a qué hora) se hizo un update en un
registro y no lo tengo programado.


Gracias mil


PD: A partir de ahora programaré auditoría para todo.


Preguntas similares