Verwenden Sie sys.sql_modules
weil definition
ist nvarchar(max)
weil es keinen langen Code abschneidet.
In INFORMATION_SCHEMA.ROUTINES
die ROUTINE_DEFINITION
Spalte ist nur nvarchar(4000)
Wenn Sie also versuchen, den Text einer langen Prozedur anzuzeigen, werden Sie feststellen, dass er abgeschnitten ist.
Verwenden Sie dies, um in jeder Prozedur, Ansicht, Funktion nach Text zu suchen:
SELECT DISTINCT
o.name AS Object_Name,o.type_desc
FROM sys.sql_modules m
INNER JOIN sys.objects o ON m.object_id=o.object_id
WHERE m.definition Like '%'[email protected]+'%'
ORDER BY o.type_desc,o.name
Verwenden Sie dies, um den Text einer bestimmten Prozedur, Ansicht, Funktion anzuzeigen:
select * from sys.sql_modules where object_id=object_id('YourProcedure')