好的,我知道这是一个模糊的问题。但是我有一个要求,我需要列出应用程序中未使用的所有表和列。我可以进行手动代码搜索,但这会花费很多时间。要检查的表数为 140,表中的最大字段数为 90。
现在我已经开始在代码中搜索表名,并创建了一个包含所有表名的 Excel 表,当我在代码中找到一个表时,我将其突出显示为绿色。所以桌子更容易一些。
我的问题真的是,有没有办法加快这个过程?或者可以应用一些方法/技术?
谢谢?
一切都取决于您的应用程序大小和编码技术。
如果我有一个大型应用程序,我会启用完整的 mysql 日志(或侵入我可能拥有的任何数据库包装器,以记录查询),运行应用程序,然后从日志中提取信息。但是,这样做只是在转移问题。无需担心捕获所有查询,您现在需要确保运行应用程序代码的每一行(这样您就可以确定没有任何东西逃脱并且您已经分析了所有可能性)。
这实际上称为“代码覆盖率分析”,并且有一些工具可以帮助您。
这就是说,我相信手动分析对于小型应用程序可能会更快。
我建议您构建一个执行该工作的脚本。例如,您可以使用如下查询选择数据库中的表列表:
show tables from YOUR_DATABASE;
更多信息:http ://dev.mysql.com/doc/refman/5.0/en/show-tables.html
然后你可以循环你的表并使用以下方法检查字段:
show columns from YOUR_TABLE;
更多信息:http ://dev.mysql.com/doc/refman/5.0/en/show-columns.html
最后,您可以在代码中搜索(例如 grep)表和字段并编写日志或类似内容。