用SQL語句查找包含有某個關鍵字的存儲過程、觸發器、函數等等,SQL語句如下:
select OBJECT_NAME(id) as 存儲過程,id from syscomments where id in ( select object_id(name) from dbo.sysobjects where xtype='P' --存儲過程為P ) and text like '%FieldName%' --關鍵字 group by id
或
select name from sysobjects o, syscomments s where o.id = s.id and text like '%Extent1%' --and o.xtype = 'P'
xtype:對象類型。可以是下列對象類型中的一種:
C = CHECK 約束
D = 默認值或 DEFAULT 約束
F = FOREIGN KEY 約束
L = 日志
FN = 標量函數
IF = 內嵌表函數
P = 存儲過程
PK = PRIMARY KEY 約束(類型是 K)
RF = 復制篩選存儲過程
S = 系統表
TF = 表函數
TR = 觸發器
U = 用戶表
UQ = UNIQUE 約束(類型是 K)
V = 視圖
X = 擴展存儲過程