Не используйте syscomments , потому что syscomments.text
равно nvarchar(4000)
и в результате обрежет все, что длиннее.
Используйте sys.sql_modules
, поскольку definition
равно nvarchar(max)
, длинный код не будет усечен.
используйте это для просмотра текста данной процедуры, представления или функции:
SELECT * FROM sys.sql_modules WHERE object_id=object_id('YourProcedure')
Используйте это, чтобы получить имя, тип и текст любой процедуры, представления или функции:
SELECT DISTINCT
o.name AS Object_Name,o.type_desc, m.definition
FROM sys.sql_modules m
INNER JOIN sys.objects o ON m.object_id=o.object_id
WHERE m.object_id=object_id('CPT_SP_IRA_ComboBox_IncidentStatus')