我需要在存储过程中搜索一个字符串。这是由用户创建的。所以我不能使用它:
SELECT OBJECT_NAME(object_id), AS MYSPDEFINITION
FROM sys.procedures
WHERE OBJECT_DEFINITION(object_id) LIKE '%string%';
我有一个包含存储过程的列,例如:“execute salarybyid
”等等,每行最多200行。如何查找这些存储过程是否包含特定字符串?
答案 0 :(得分:1)
试试这个,
SELECT ROUTINE_NAME
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_DEFINITION like '%String%'
但是,它只会在编辑器中显示前4000个字符。
您的查询将提供整个例程
SELECT OBJECT_DEFINITION(object_id)
FROM sys.procedures
WHERE OBJECT_DEFINITION(object_id) LIKE '%String%'
答案 1 :(得分:0)
尝试类似......
1