SQL Server查询所有表之中包含该字段的方法


  本文标签:SQL Server查询

  SQL Server查询可以实现很多的功能,下面为您介绍的是SQL Server查询所有表之中包含该字段的方法,希望对您学习SQL Server查询方面能有些许的帮助  。

  从系统表自动生成sql语句来运行得到结果

  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