要在所有数据库中查找引用表中某列的表的SQL Server查询?

8aqjt8rx  于 2022-12-22  发布在  SQL Server
关注(0)|答案(1)|浏览(112)

我想从所有的数据库中找到引用了某个数据库的表中的列的表。有人能帮我吗?
不确定如何继续

nbysray5

nbysray51#

这应该可以,请注意我已经使用了类似的运算符(其中col.name类似于“%COLUMN_NAME_HERE %”),因此它将找到匹配的模式,如果您想找到完全匹配,请使用(其中col.name =“COLUMN_NAME_HERE”)

select 
     schema_name(tab.schema_id) as schema_name
     ,tab.name as table_name
     , col.column_id,col.name as column_name
     , t.name as data_type, col.max_length, col.precision 
from sys.tables as tab 
    inner join sys.columns as col on tab.object_id = col.object_id
    left join sys.types as t on col.user_type_id = t.user_type_id 
where col.name like '%COLUMN_NAME_HERE%' 
order by schema_name,table_name, column_id*

相关问题