
刚找到问题所在,因为一条删除语句:
$db->execute("delete from t_file where id = %d", $val['file_id']);
因为t_file的id是uuid字符型,所以事务里执行的是 delete from t_file where id = 0,然后被删了好多数据。
1 kidlj 2020-11-05 00:20:33 +08:00 相比怀疑 MySQL,TP 或者 MySQL driver,更要首先怀疑自己的代码。 |
2 labulaka521 2020-11-05 08:20:22 +08:00 via iPhone 幻觉 |
3 wowo243 2020-11-05 08:55:49 +08:00 查代码,代码查不出来查 binlog |
4 s609926202 OP |
5 golden0125 2020-11-05 09:18:06 +08:00 应该判断$db->commit();的返回 而不是直接直接返回 true |
6 CyJaySong 2020-11-05 09:25:03 +08:00 直接就返回 true, 你确定 commit 成功了? |
7 zarte 2020-11-05 09:49:15 +08:00 很多人用的程序遇到问题先排除程序问题,直接查代码找问题可以省很多时间,还不会被嘲讽。 |
8 roundgis 2022-12-11 04:46:30 +08:00 via Android 先不要疑 |