MSSQL 全表关键字查询, 适用于特定已知名字的列
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
if object_id('tempdb..#tmp') is not null begin drop table #tmp end DECLARE c_cursor CURSOR FOR select TABLE_NAME as name from INFORMATION_SCHEMA.columns where COLUMN_NAME = 'name' order by TABLE_NAME --Select name From sysobjects order by name create table #tmp(name varchar(100), tablename varchar(100)) --temp table DECLARE @tablename varchar(100) DECLARE @sql varchar(max) OPEN c_cursor FETCH NEXT FROM c_cursor into @tablename WHILE @@FETCH_STATUS = 0 BEGIN set @sql='insert into #tmp(name, tablename) select cast(name as varchar(100)), cast('''+@tablename+''' as varchar(100))as tablename from ' + @tablename+ ' where name like ''%全月%'''--xx就是你要查的名字,可自己替换,其他地方就不要改啦 exec (@sql) FETCH NEXT FROM c_cursor into @tablename END CLOSE c_cursor DEALLOCATE c_cursor select * from #tmp if object_id('tempdb..#tmp') is not null begin drop table #tmp end |