SQL SERVER – Obtener fecha de modificacion de procedimientos almacenados, funciones y tablas.
En estos días me ha tocado hacer
interesante hasta cierto punto, ya que uno de mis clientes me solicito un
pequeño aplicativo muy sencillo y simple que lo único que hace es conectarse a
dos ambientes de base de datos y comparar los objetos que se tienen en un
esquema y en otro mostrando cuales objetos existen y cuales no en una base de
datos, así también en caso de existir cuales son los objetos más nuevos,
mostrando una especie de versiones de esquemas de base de datos.
Cuando me solicitaron esté
pequeño aplicativo, una de mis primeras preguntas fue en que nos basaremos para
determinar que objeto es más nuevo, el fácilmente basándose en los procesos que
llevan a cabo me dijo en la fecha de modificación de mis objetos, de está
manera les dejo algunos de los querys que utilice para determinar este detalle
en cada uno de los componentes (objetos) de base de datos.
Obteniendo los Procedimientos
Almacenados (Stored Procedures).
SELECT name,
modify_date FROM sys.objects
WHERE type = 'P' AND name NOT LIKE 'sp_%'
ORDER BY modify_date DESC
WHERE type = 'P' AND name NOT LIKE 'sp_%'
ORDER BY modify_date DESC
Obteniendo
las tablas (Tables).
SELECT name,
modify_date FROM sys.objects
WHERE type = 'U'
ORDER BY modify_date DESC
WHERE type = 'U'
ORDER BY modify_date DESC
Obteniendo
las funciones (Functions).
SELECT name,
modify_date FROM sys.objects
WHERE type = 'FN'
ORDER BY modify_date DESC
WHERE type = 'FN'
ORDER BY modify_date DESC
Espero próximamente poner mi aplicativo en la web, pensando
en que muchos tenemos a la hora de desarrollar diferentes ambientes (desarrollo, pruebas, producción,
etc).
Comentarios