A menudo necesitamos hacer análisis de impacto de cambios en las tablas de una base de datos, y la verdad que tener que revisar procedimiento por procedimiento es una tarea un tanto tediosa.
Un truco que siempre me ha dado resultado es realizar una búsqueda [simil] «full text» dentro de los procedimientos, es decir encontrar todos los procedimientos que en su código contengan cierto texto (Nombre de una Tabla, Vista, Variable, etc…)
Para ello me valgo de esta simple pero efectiva consulta:
SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_DEFINITION LIKE '%AlgunaPalabraQueTeAcuerdes%' AND ROUTINE_TYPE='PROCEDURE' |
La misma también se puede adaptar a la búsqueda de Vistas, e incluso se puede hacer una similar para la búsqueda de tablas que contengan cierta columna (Muy útil para encontrar FKs no referenciadas)
También podemos hacer uso de softwares más desarrollados, como el SQLSearch de Apex y otros similares, pero la verdad a veces tiendo más a lo simple y «stand alone» de estas queries mágicas 🙂
Espero les sea de utilidad a alguien más y los invito a mantenerse en contacto conmigo a través de mi perfil de LinkedIn.
¿ Tienes alguna consulta util que te saque de apuros o haga ser un programador/dba mas eficiente?
Impresioname contandome sobre tus trucos o atajos en SQL Server, el mundo entero de lo agradecerá.
By Javier Castillo 03/03/2017 - 3:05 pm
Excelente, esto no lo sabía. Saludos, buen blog.