您的位置:首页 > 数据库

SQLServer查询所有表所有字段包含xx的信息

2008-12-05 19:20 483 查看
从系统表自动生成sql语句来运行得到结果

p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; font-size: 10.5pt; font-family: "Calibri", "sans-serif" }
.MsoChpDefault { }
div.Section1 { }

select a.name as columnname,object_name(a.id)as tablename into t from
syscolumns a,

sysobjects b,

systypes c

where a.id=b.id

and a.xtype=c.xtype

and b.xtype='u'

and c.name in('varchar','nvarchar','char','nchar','text','ntext')

and object_name(a.id)<>'t'

go

create function udf_genSQL(@tableName varchar(1000),@keyword varchar(1000))

returns varchar(8000)

as

begin

declare @sql varchar(8000)

set @sql='select * from '+@tableName
+' where 1=1 '

select @sql=@sql+' or '+

columnname +' like ''%'+@keyword+'%''' from t

where tablename=@tablename

return @sql

end

go

select dbo.udf_genSQL(tableName,'a') from t group by tablename

drop table t

drop function dbo.udf_genSQL
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: