sql – 在所有数据库中搜索存储过程/函数

前端之家收集整理的这篇文章主要介绍了sql – 在所有数据库中搜索存储过程/函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在所有数据库中的所有过程/函数等中搜索特定文本.我设法从这个 answer创建了所需的查询,但看起来OBJECT_DEFINITION(OBJECT_ID(SPECIFIC_NAME))为除当前数据库之外的所有数据库返回NULL.
sp_msforeachdb 'SELECT ''?'' AS DB,SPECIFIC_NAME,OBJECT_DEFINITION(OBJECT_ID(SPECIFIC_NAME)) FROM [?].INFORMATION_SCHEMA.ROUTINES'

解决方法

问题是OBJECT_ID不能以这种方式使用.它仅适用于当前数据库.尝试直接从INFORMATION_SCHEMA.ROUTINES返回ROUTINE_DEFINITION.这个限制为4000个字符.我将尝试在SO上找到我的其他答案,这使我的解决方法使用MS元数据视图.

看看这个:

Can you search SQL Server 2005 Stored Procedure content?

原文链接:https://www.f2er.com/mssql/77622.html

猜你在找的MsSQL相关文章