PDA

View Full Version : Tìm kiếm thủ tục lưu


TrungBravo
05-19-2010, 04:16 PM
Nếu ta cần tìm thủ tục lưu có chứa chuỗi bất kỳ (ví dụ tìm 'FOR XML'). Ta có thể làm một trong các cách sau

DECLARE @_StrTmp VARCHAR(64)

SET @_StrTmp = '%for xml%'

-- cách 1
SELECT Name
FROM sys.procedures
WHERE OBJECT_DEFINITION(object_id) LIKE @_StrTmp

-- cách 2
SELECT OBJECT_NAME(object_id)
FROM sys.sql_modules
WHERE Definition LIKE @_StrTmp
AND OBJECTPROPERTY(object_id, 'IsProcedure') = 1

-- cách 3
SELECT ROUTINE_NAME
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_DEFINITION LIKE @_StrTmp
AND ROUTINE_TYPE = 'PROCEDURE'