Este es el caso de que en la base de datos que estoy verificando, hay una tabla de archivo que mantiene el historial del usuario, y hay un procedimiento de activación o almacenamiento que, después de un tiempo, elimina filas de esta tabla, para evitar el sobredimensionamiento de la tabla. mismo, no diseñé la base de datos, solo estoy haciendo el mantenimiento de una aplicación que usa esta base de datos, así que no sé el nombre de estos procedimientos almacenados o disparadores, lo que quiero hacer es localizar este procedimiento almacenado o disparador, verifique el código y modifíquelo para dejar este "historial de usuario" más tiempo en la tabla.
Alguien me dijo que revisara la tabla de "sysobjects", donde realmente puedo ver algo con el mismo nombre de la tabla, pero esta es la única información que he podido recuperar, ¿algún consejo?
Gracias.
syscomments
tiene varias filas para un objeto que supera el límite de 4000 caracteres, por lo que las consultas que lo utilizan son tan válidas comosys.sql_modules
.sys.sql_modules
Sin embargo, todavía lo recomiendo ya quesyscomments
se deprecia.Pruebe ApexSQL Search
ApexSQL Search es un complemento GRATUITO de SQL Server Management Studio y Visual Studio que, entre otras características, tiene la función Ver dependencias. La función Ver dependencias tiene la capacidad de visualizar todas las relaciones de los objetos de la base de datos SQL, incluidas aquellas entre objetos cifrados y del sistema, objetos específicos de SQL Server 2012 y objetos almacenados en bases de datos cifradas con cifrado de datos transparente (TDE)
La función Ver dependencias también le permite configurar y personalizar el diseño del diagrama de dependencias visuales, incluidas las relaciones que se presentarán, el diseño y el tamaño del diagrama generado, y la profundidad de desglose de las dependencias
Descargo de responsabilidad: trabajo para ApexSQL como ingeniero de soporte
fuente
Para referencia futura a partir de 2008 también hay un DMV que se puede utilizar.
sys.dm_sql_referencing_entities
. Generalmente prefiero usar SQL_Modules ya que evita falsos positivos entre otras cosas. Lo discutí aquí, pero básicamente si tienes un código como este:Terminará con los resultados para la tabla ABC, la tabla ABCLog la vista vw_ABC, el procedimiento almacenado sp_Update_ABC, etc. Además, que yo sepa, el DMV manejará SP cifrados y no cifrados, mientras que el método sql_modules solo funciona con SP no cifrados. .
La versión DMV de la misma consulta es esta:
fuente
También puede usar la vista de catálogo sys.sql_expression_dependencies . Use esta consulta:
fuente