23

寻找一个漂亮的帮助函数/方法来遍历 MySql 数据库的所有定义的表、列、存储过程等。

我对 SQL Server 有类似的东西。

4

5 回答 5

38

mysqldump --compact --skip-extended-insert -u root -proot mydb | grep "interesting string"

于 2011-06-01T22:43:53.767 回答
13

在 INFORMATION_SCHEMA 数据库中:

select * from columns WHERE TABLE_NAME LIKE '%tablename%' AND COLUMN_NAME LIKE '%columnname%'

更多信息在这里: http ://dev.mysql.com/doc/refman/5.0/en/information-schema.html

好的,它并没有完全回答你的问题,但你应该能够从这里按照你想要的方式把它放在一起。

于 2009-01-16T20:52:42.610 回答
1

或者简单,MySQL Workbench -> 数据库 -> 搜索表数据...

于 2019-01-09T15:25:20.903 回答
0

这里有一个 MySQL 的存储过程(http://forge.mysql.com/tools/tool.php?id=232),它将创建一个表来存储输出,然后遍历 information_schema 数据库的 COLUMNS 表以获取所有数据库的表和列名。接下来对 database.table 执行 count() 查询,在 where 条件下使用适当的搜索字符串对每一列进行查询。如果 count() > 0,则该特定列具有搜索词,因此它将将该三元组(数据库名称、表名称、列名称)插入到表中。最后从表中选择 * 以查看具有搜索词的相应数据库表和列名。

于 2011-02-09T13:24:17.797 回答
0

Common Resource Grep (crgrep) 搜索表/列名和数据匹配并支持 MySQL。

http://sourceforge.net/projects/crgrep/

还搜索其他难以搜索的资源,例如隐藏在档案中的内容。我将 crgrep 开发为开源工具。

于 2013-08-19T01:19:02.017 回答