gpt4 book ai didi

python - 如何修复更新不起作用的情况

转载 作者:行者123 更新时间:2023-11-29 15:54:10 26 4
gpt4 key购买 nike

我正在尝试使用 where 条件更新我的表。我不确定我哪里出错了。

我在 python 中使用 peewee 进行 SQL 查询。我正在尝试更新具有相同列的两个不同表。该查询在 table1 上运行良好,但在 table2 上则不然,尽管它们是相同的。最奇怪的是,没有错误。我还启用了查询日志记录。

if x:
for id in x:
table1.update(status = 0).where(table1.slab_id == id).execute()
table2.update(status = 0).where(table2.slab_id == id).execute()

预计:对于提供的 ID,表 1 和表 2 将更新为状态 = 0。实际:表 1 已成功更新,而表 2 的所有值均已更新,而不是仅更新一个。我还记录了查询,如下所示:

('UPDATE `table1` SET `status` = %s WHERE (`table1`.`slab_id` = %s)', [0, 44])
('UPDATE `table1` SET `status` = %s WHERE (`table1`.`slab_id` = %s)', [0, 43])
('UPDATE `table2` SET `status` = %s', [0])
('UPDATE `table2` SET `status` = %s', [0])

'UPDATE `table2` SET `status` = 0 WHERE `table2`.`slab_id` = 43 -> 有效

对于不应用条件的表2,我无法理解为什么?

最佳答案

这可能是版本不匹配或外键约束的情况,不允许更新或删除表。

关于python - 如何修复更新不起作用的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56591119/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com