MariaDB社区

标题: 【求助】请问如何在mysql的一个库中搜索一个值返回有这个值的表名? [打印本页]

作者: 幸福骇客    时间: 2013-6-4 11:43
标题: 【求助】请问如何在mysql的一个库中搜索一个值返回有这个值的表名?
【求助】请问如何在mysql的一个库中搜索一个值返回有这个值的表名?

我知道在sqlserver的这个语句,但发现在mysql中使用不了语句如下:
  1. DECLARE @what varchar(800)
  2. SET @what='900002' --要搜索的字符串
  3. DECLARE @sql varchar(8000)
  4. DECLARE TableCursor CURSOR LOCAL FOR
  5. SELECT sql='IF EXISTS ( SELECT 1 FROM ['+o.name+'] WHERE ['+c.name+'] LIKE ''%'+@what+'%'' ) PRINT ''所在的表及字段:['+o.name+'].['+c.name+']'''
  6. FROM syscolumns c JOIN sysobjects o ON c.id=o.id
  7. -- 175=char 56=int 可以查 select * from sys.types
  8. WHERE o.xtype='U' AND c.status>=0 AND c.xusertype IN (175, 239, 231, 167 )
  9. OPEN TableCursor
  10. FETCH NEXT FROM TableCursor INTO @sql
  11. WHILE @@FETCH_STATUS=0
  12. BEGIN
  13. EXEC( @sql )
  14. FETCH NEXT FROM TableCursor INTO @sql
  15. END
  16. CLOSE TableCursor
  17. -- 删除游标引用
  18. DEALLOCATE TableCursor
复制代码

作者: kider    时间: 2013-6-4 18:03
跟SQLServer一样,MySQL也有相应的一系列字典表,你可以在information_schema库中找到。

关于information_schema可以参考一下手册:
http://www.mysqlpub.com/onlinema ... rmation-schema.html

或搜索:
http://search.discuz.qq.com/f/se ... =1&qs=txt.history.a

有时间了再来具体写脚本。

另外思路:
你也可以把数据及结构备份出来,然后查找分析文本,看看能不能解决你的问题。





作者: 左耳边的期盼    时间: 2016-1-27 13:57
北京最好的医院 http://haoyy.yuqinge.com/zlzh/
北京癫痫病医院路线 http://haoyy.yuqinge.com/yydz/
治癫痫病哪家医院好 http://haoyy.yuqinge.com/njyy/
癫痫病医院哪个最好 http://haoyy.yuqinge.com/nlzh/
癫痫病哪个医院好 http://haoyy.yuqinge.com/njh/
专业治癫痫病医院哪家好 http://haoyy.yuqinge.com/zyyy/
治癫痫最好的医院 http://haoyy.yuqinge.com/zyhy/
癫痫治疗专科医院哪家好 http://haoyy.yuqinge.com/zdxy/
中医治疗癫痫的好处生活 http://haoyy.yuqinge.com/zyzl/
中医治疗癫痫的药方有 http://haoyy.yuqinge.com/zyyf/





欢迎光临 MariaDB社区 (http://123.56.88.72/) Powered by Discuz! X3.2