如何在Sql Server 2008 R2存储过程中搜索字符串?

| 我正在将旧版SQLS2k迁移到2008R2,看来所有数据访问都是通过存储的proc完成的,任何自定义查询都使用旧的
*=
1外部联接语法。有超过一百个proc,所以我不想单独打开每个进程,以查看它是否使用该语法(大多数不会),有没有一种方法可以查询元数据以获取proc /功能列表/ views / triggers,然后循环搜索“ 0”或“ 1”字符串,打印出有问题的对象的名称? 我的背景是oracle,我知道如何在其中找到元数据视图,但是我对Sql Server有点陌生。降级兼容版本不是一种选择。 谢谢!     
已邀请:
        免费的Red Gate SQL搜索? 或查询sys.sql_modules
SELECT OBJECT_NAME(object_id)
FROM sys.sql_modules
WHERE definition LIKE \'%=*%\' OR definition LIKE \'%*=%\'
注意:INFORMATION_SCHEMA视图和系统注释会截断该定义,因此不可靠。     
        使用查询的问题是,如果存储过程被加密,除非您正在运行DAC连接类型,否则这些查询将不起作用。 这是第三方工具派上用场的地方,因为它们可以帮助您轻松完成此任务。我使用的是免费的ApexSQL搜索,但我想您对Red Gate或其他任何工具都不会出错。     

要回复问题请先登录注册