全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 1333|回复: 13

想在mssql查询一条数据..在哪里个表里,.这句子怎样写

[复制链接]
发表于 2018-8-20 15:03:30 | 显示全部楼层 |阅读模式
如查询 张三
在mssql 里 "饭堂" 数据库里有N个表...我想知道张三在哪几个表出现了,这句子怎样写?
某某人 该用户已被删除
发表于 2018-8-20 15:06:56 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2018-8-20 15:47:58 来自手机 | 显示全部楼层
等于要查询整个数据库?不可能吧
发表于 2018-8-20 15:56:02 | 显示全部楼层
本帖最后由 funders 于 2018-8-20 15:59 编辑

我知道 但是没有金币就不告诉你
算了 不要金币了

  1. declare @key varchar(30)
  2. set @key = 'admin' --要查找的字符串
  3. declare @tabName varchar(40),@colName varchar(40)
  4. declare @sql varchar(2000)
  5. declare @tsql varchar(8000)
  6. declare tabCursor cursor for
  7. select name from sysobjects where xtype = 'u' AND name <> 'dtproperties' --查询所有用户表的名称
  8. open tabCursor
  9. fetch NEXT from tabCursor into @tabName
  10. while @@fetch_status = 0
  11. begin
  12. set @tsql = ''
  13. declare colCursor cursor for
  14. select name from SysColumns where id=Object_Id(@tabName) and xtype=167 and length=50 --查询所有用户表的列名称
  15. open colCursor
  16. fetch NEXT from colCursor into @colName
  17. while @@fetch_status = 0
  18. begin
  19. set @sql = 'if(exists(select * from ' + @tabName + ' where '
  20. set @sql = @sql + @colName + ' like ''%' + @key + '%'')) begin select * from '
  21. set @sql = @sql + @tabName + ' where ' + @colName + ' like ''%' + @key + '%'';select '''
  22. + @tabName + ''' as TableName end'
  23. set @tsql = @tsql + @sql + ';'
  24. fetch NEXT from colCursor into @colName
  25. end
  26. exec(@tsql)
  27. close colCursor
  28. deallocate colCursor
  29. fetch NEXT from tabCursor into @tabName
  30. end
  31. close tabCursor
  32. deallocate tabCursor
复制代码


不用谢
发表于 2018-8-20 16:13:05 | 显示全部楼层
funders 发表于 2018-8-20 15:56
我知道 但是没有金币就不告诉你
算了 不要金币了

大佬啊..真是可爱
 楼主| 发表于 2018-8-20 16:27:53 | 显示全部楼层
funders 发表于 2018-8-20 15:56
我知道 但是没有金币就不告诉你
算了 不要金币了


谢了...

700多个表....

我刚用写了个工具穷举...

“bw_tab_fielddesc”, 用时75秒
 楼主| 发表于 2018-8-20 16:29:50 | 显示全部楼层
funders 发表于 2018-8-20 15:56
我知道 但是没有金币就不告诉你
算了 不要金币了

刚试了..没有返回结果 就一句 命令已成功完成。

这个要怎样搞
发表于 2018-8-20 16:32:18 | 显示全部楼层
这个操作很皮啊。  初期把数据库结构给做丑了吗?
发表于 2018-8-20 16:34:09 | 显示全部楼层
vpswz 发表于 2018-8-20 16:29
刚试了..没有返回结果 就一句 命令已成功完成。

这个要怎样搞

不应该啊,把脚本里admin替换成你要找的字符串,我之前用这个绝对可以的
 楼主| 发表于 2018-8-20 16:42:41 | 显示全部楼层
funders 发表于 2018-8-20 16:34
不应该啊,把脚本里admin替换成你要找的字符串,我之前用这个绝对可以的

QQ截图20180820163629.jpg (26.1 KB, 下载次数: 0)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-3-12 01:39 , Processed in 0.074169 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表