Sql Server 在数据库中所有表所有栏位 找出匹配某个值的脚本(转)
生活随笔
收集整理的這篇文章主要介紹了
Sql Server 在数据库中所有表所有栏位 找出匹配某个值的脚本(转)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉自:
http://blog.csdn.net/chenghaibing2008/article/details/11891419
(下面代碼稍有修改,將要查找的內容直接作為參數傳人,并且使用=而不是like)
?
ALter PROCEDURE [dbo].[usp_Tool_GetDataOfKey] @Value nvarchar(50)ASdeclare @strTableName nvarchar(100) declare @strTableID nvarchar(50) declare @strColumnName nvarchar(100) declare @strSql nvarchar(500)create table #KeyTable(Table_Name nvarchar(100),Column_Name nvarchar(50))declare Table_Cursor cursor for select name,id from sysobjects where xtype='U' open Table_Cursor fetch next from Table_Cursor into @strTableName,@strTableID while(@@fetch_status=0)begindeclare Column_Cursor cursorforselect name from syscolumns where id=@strTableID and (((xtype=239 or xtype=231) and length>30) or ((xtype=175 or xtype=167) and length>15))open Column_Cursorfetch next from Column_Cursor into @strColumnNamewhile(@@fetch_status=0)beginselect @strSql='if exists(select * from '+@strTableName+' where '+@strColumnName+' ='''+@Value+''')'select @strSql=@strSql+'insert into #KeyTable(Table_Name,Column_Name) values('''+@strTableName+''','''+@strColumnName+''')' print @strSqlexec(@strSql)fetch next from Column_Cursor into @strColumnNameend close Column_Cursordeallocate Column_Cursorfetch next from Table_Cursor into @strTableName,@strTableIDend close Table_Cursor deallocate Table_Cursorselect * from #KeyTable?
轉載于:https://www.cnblogs.com/GarfieldTom/p/4195120.html
總結
以上是生活随笔為你收集整理的Sql Server 在数据库中所有表所有栏位 找出匹配某个值的脚本(转)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2015年要学习和巩固的知识点
- 下一篇: C# 生成缩略图 方法