我有一个查询,可以查找与某个数据库的列名匹配的所有表和视图。我在用SQL服务器2008
SELECT table_name FROM information_schema.columns
WHERE column_name = 'product_name'
我想扩展查询的功能以搜索所有数据库,甚至查找具有我搜索的列名称的存储过程。
该脚本将在所有数据库的所有表中搜索您的列。
Create table #yourcolumndetails(DBaseName varchar(100), TableSchema varchar(50), TableName varchar(100),ColumnName varchar(100), DataType varchar(100), CharMaxLength varchar(100))
EXEC sp_MSForEachDB @command1='USE [?];
INSERT INTO #yourcolumndetails SELECT
Table_Catalog
,Table_Schema
,Table_Name
,Column_Name
,Data_Type
,Character_Maximum_Length
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME like ''%yourcolumnname%'''
select * from #yourcolumndetails
Drop table #yourcolumndetails
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)