我有一个相当大的MySQL数据库,有几十个表。我正在删除一些遗留数据,我正在寻找一种在整个数据库中搜索字符串的快速方法架构(不在数据本身中)。我正在寻找具有特定字符串的列。是否有内置的方法来执行此操作,还是应该编写一个sql脚本来转储模式并使用php进行搜索?
答案 0 :(得分:4)
您可以使用INFORMATION_SCHEMA表来查找每个表的列。
SELECT
`COLUMN_NAME`
FROM
`INFORMATION_SCHEMA`.`COLUMNS`
WHERE
`TABLE_SCHEMA` = 'database_name'
AND
`TABLE_NAME` LIKE '%search%'
此处有更多信息:http://dev.mysql.com/doc/refman/5.0/en/information-schema.html