我可以在""中的过程和触发器中搜索确切的文本。
但是我需要在%%中搜索所有数据库对象中所有短语的字符串

最佳答案

SELECT ROUTINE_TYPE,* FROM INFORMATION_SCHEMA.ROUTINES WHERE
CHARINDEX( 'test',ROUTINE_DEFINITION)>0

SELECT VIEW_DEFINITION,* FROM INFORMATION_SCHEMA.VIEWS WHERE
CHARINDEX('test',VIEW_DEFINITION)>0

SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE
(CHARINDEX( 'col1',COLUMN_NAME)>0 OR CHARINDEX( 'tab2',TABLE_NAME)>0)


我们使用charindex而不是像Percentile这样的运算符(例如'%test%')来提高搜索性能

10-08 11:41