如何sqlserver2005从整个库中查找某个值?

如题,是从整个数据库中查找含有某个值的字段名。。。该怎么些sql语句?... 如题,是从整个数据库中查找含有某个值的字段名。。。该怎么些sql语句? 展开
 我来答
猫的时间8WNN3
2010-04-03 · TA获得超过356个赞
知道小有建树答主
回答量:238
采纳率:0%
帮助的人:186万
展开全部
以下为在SQL Server中查看某个表的字段信息的查询语句(以数据库Pubs的jobs表为例)

SELECT SysObjects.Name as TableName,
SysColumns.Name as ColumnsName,
SysTypes.Name as DateType,
SysColumns.Length as DateLength,
SysProperties.Value as Remark --列描述
FROM SysObjects,
SysTypes,
SysColumns
LEFT JOIN SysProperties
ON (Syscolumns.Id = Sysproperties.Id AND Syscolumns.Colid = Sysproperties.Smallid)
WHERE (Sysobjects.Xtype =u OR Sysobjects.Xtype =v)
AND Sysobjects.Id = Syscolumns.Id
AND SysTypes.XType = Syscolumns.XType
AND SysTypes.Name <> sysname
AND SysObjects.name = jobs
如果需要查询整个数据库的所有表的话,就把最后哪个条件去掉即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
feixianxxx
2010-04-07 · TA获得超过2202个赞
知道大有可为答主
回答量:1273
采纳率:100%
帮助的人:1861万
展开全部
declare @sql varchar(max);
set @sql='';
select @sql=@sql+'if exists (select * from '+o.[name]+' where '+c.[name]+' like ''%你的特定值%'')
select '''+o.[name]+''' tabname,'''+c.[name]+''' colname ;'+CHAR(10)
from sys.columns c join sys.objects o
on c.[object_id]=o.[object_id]
where (max_length>=4 or max_length=-1)
and system_type_id in (35,99,168,175,231,239,241)
and o.[type]='U'
print @sql;
exec(@sql)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式