Python mysql行受影响是,但表仍然为空

Python mysql行受影响是,但表仍然为空,python,mysql,rows,Python,Mysql,Rows,我有一个Python脚本与MySQL数据库对话 这个脚本已经运行了好几个月了 突然之间,它实际上并没有向应该修改的表添加任何内容 该脚本有很多打印语句和错误处理程序,它仍然像正常运行一样运行,但数据库中没有显示任何内容 它甚至打印出“rows impacted:108”或其他内容,但当我在phpMyAdmin中查看数据库时,它说表中没有行 它唯一能做的就是截断表。开头有一个部分截断了相关的表,这样脚本就可以再次填充它们。如果我通过phpMyAdmin在表中手动创建新行,那么当脚本运行时,该行将消

我有一个Python脚本与MySQL数据库对话

这个脚本已经运行了好几个月了

突然之间,它实际上并没有向应该修改的表添加任何内容

该脚本有很多打印语句和错误处理程序,它仍然像正常运行一样运行,但数据库中没有显示任何内容

它甚至打印出“rows impacted:108”或其他内容,但当我在phpMyAdmin中查看数据库时,它说表中没有行


它唯一能做的就是截断表。开头有一个部分截断了相关的表,这样脚本就可以再次填充它们。如果我通过phpMyAdmin在表中手动创建新行,那么当脚本运行时,该行将消失,就像它正确地截断表一样。但在那之后什么也做不了。它仍然可以正常运行,但实际上不会修改数据库。

谢谢,是的,出于某种原因,默认情况下脚本不再自动提交


我添加了“cnx.autocommit(True)”,它又开始工作了。

上次我使用Python的MySQL连接器时,默认情况下它不会提交事务。您必须明确地提交。也许有一个全局配置来控制这个?而TRUNCATE TABLE执行隐式提交,而不考虑客户机。所以我猜你的应用程序配置发生了变化,不再提交更新了。