为MySql数据库寻找一个漂亮的辅助函数/方法来浏览所有已定义的表,列,存储过程等。
我对SQL Server有类似的东西。
答案 0 :(得分:33)
mysqldump --compact --skip-extended-insert -u root -proot mydb | grep "interesting string"
答案 1 :(得分:10)
在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
好的,它并没有完全回答你的问题,但是你应该能够把它放在一起。
答案 2 :(得分:0)
这里有一个存储过程(http://forge.mysql.com/tools/tool.php?id=232)用于MySQL,它将创建一个用于存储输出的表,然后循环通过information_schema数据库的COLUMNS表来获取所有数据库的表和列名。接下来在database.table上为每个列执行count()查询,并在where条件中使用适当的搜索字符串。如果count()> 0,该特定列具有搜索项,因此它将该三元组(数据库名称,表名,列名)插入表中。最后从表中选择*以查看具有搜索词的相应数据库表和列名。
答案 3 :(得分:0)
Common Resource Grep(crgrep)搜索表/列名称和数据匹配并支持MySQL。
http://sourceforge.net/projects/crgrep/
还搜索其他难以搜索的资源,例如隐藏在档案中的内容。我开发了crgrep作为开源工具。
答案 4 :(得分:0)
或者简单的MySQL Workbench->数据库->搜索表数据...