打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
在sqlserver数据库中查询所有表的任意字段中某个值(例如值为a)




CREATE TABLE qResults (tName nvarchar(370), cname nvarchar(3630),[count] int)

declare @tname nvarchar(200)
declare @cname nvarchar(200)

declare @countOut nvarchar(200)
declare @sql nvarchar(max)
declare c_search cursor for
select t.name,c.name from sysobjects t inner join syscolumns c on t.id=c.id where t.type='u'  and c.xtype in(56,167,175,231,239) order by t.name --xtype 这个地方限制类型为int varchar char nvarchar nchar 五种类型
open c_search
fetch next from c_search into @tname,@cname
while @@FETCH_STATUS=0
begin
  
   set @sql=N'select @countx=COUNT(*) from '+@tname +' where [' +@cname +'] =''a'' '
  
   print @sql
   EXECUTE sp_executesql @sql,N'@countx nvarchar(200) out ', @countx=@countOUT OUT

   insert into qResults values (@tname,@cname,@countOUT)

  
   fetch next from c_search into @tname,@cname
end
select tName 'Table',cname 'Field' from qResults where [count]>0 order by tname
close c_search
deallocate c_search

drop table qResults
   

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
修改数据库和表字段为大写
SQL Server 索引重建脚本
几种游标的用法
给所有表加上一个更新时间戳的触发器
电子取证中最另类的关键词搜索——在数据库中全文搜索
更改数据库中表的所属用户的两个方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服