mssql sqlserver 使用sql脚本查询指定“列名”所在视图上的方法


摘要:
下文讲述在sqlserver健康检查时,查询包含指定列名所在视图的方法分享,如下所示:
实验环境:sql server 2008 R2


实现思路:
通过查询sql_modules和all_objects系统表中的脚本定义信息是否包含列信息的方式,来获取包含列信息的视图名称

   ---例: 获取包含列名 “maomao”的视图名称
   SELECT a.name as [视图名称],b.[definition] as [定义信息] 
      FROM sys.all_objects a,sys.sql_modules b 
          WHERE a.is_ms_shipped=0 AND a.object_id = b.object_id AND a.[type] IN ('V') 
              AND b.[definition] LIKE '%maomao%'
             ORDER BY a.[name]