首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >查找表的哪些列被哪些表、存储过程、视图和函数引用

查找表的哪些列被哪些表、存储过程、视图和函数引用
EN

Stack Overflow用户
提问于 2013-03-30 17:36:38
回答 1查看 1.3K关注 0票数 1

我正在研究一个由独立软件供应商开发的C#代码和SQL2008数据库,并试图优化代码。

有一张桌子的no非常高。许多列,其中许多显然不是必需的。我想知道这个表的哪些列被其他表、存储过程、视图或函数引用,这样我就可以删除不需要的列。

我不是SQL2008方面的专家,所以如果有任何内置的工具或查询,我将不胜感激。

使用View Dependencies,我只能找出哪些其他对象引用了这个表,但它不能告诉这个表中哪些列被其他对象引用。

EN

回答 1

Stack Overflow用户

发布于 2013-03-30 19:45:12

选择表名称,然后按ALT+ F1,它将为您提供引用SQL Server中其他表和视图的列的详细信息。

此外,您可以使用以下关键字查询需要在@Keyword变量中写入所需的列名,然后以下查询将为您提供关键字为used.This的所有对象详细信息,这将帮助您。

代码语言:javascript
代码运行次数:0
运行
复制
set nocount on 
declare @Keyword as varchar(200)
set @Keyword = 'Column name'

SELECT DISTINCT
    name, 
    CASE o.xtype 
        WHEN 'S' THEN 'System Stored Proc'
        WHEN 'F' THEN 'Foreign Key'
        WHEN 'U' THEN 'Table'
        WHEN 'V' THEN 'View'
        WHEN 'P' THEN 'Stored Proc'
        WHEN 'PK' THEN 'Primary Key'
        WHEN 'TR' THEN 'Trigger'
        WHEN 'UQ' THEN 'Unique Index'
        WHEN 'D' THEN 'Default'
        WHEN 'FN' THEN 'User Defined Function'
        ELSE 'Unknown'
    END, 
    text 
FROM
    sysobjects o left join syscomments c ON c.id = o.id
WHERE
    text LIKE '%' + @Keyword + '%' 
OR  name LIKE '%' + @Keyword + '%'
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15717048

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档