这种类型的问题已发布几次,但提供的解决方案在以下情况下并不理想。在第一个查询中,我选择了在执行第一个查询时存在的表名。然后在遍历它们的同时,我想查询选定表格中的记录数量,但前提是它们仍然存在。问题是,在循环过程中,一些表被另一个脚本丢弃。例如:mysql非本机,仅当表存在时才选择
SELECT tablename FROM table
-- returns say 100 tables
while (%tables){
SELECT COUNT(*) FROM $table
-- by the time it gets to the umpteenth table, it's been dropped
-- so the SELECT COUNT(*) fails
}
而且,我猜是因为它是由cron运行,它fataly失败,我得到从cron说明它失败发送了一封电子邮件。
DBD :: mysql的:: ST执行失败:表 'XXX' 根本不 /usr/local/lib/perl/5.10.1/Mysql.pm行存在175
脚本正在使用已弃用的Mysql.pm perl模块。
异常处理??? – Khaleel
新用户提示:如果您发现它有用,您可以upvote /接受一些答案。你应该包括你的问题涉及的mysql引擎版本。 –
你尝试使用交易吗? –