【发布时间】:2017-05-31 22:18:27
【问题描述】:
我非常清楚,可以通过禁用安全更新模式来解决此问题(例如,请参阅此处:MySQL error code: 1175 during UPDATE in MySQL Workbench)。但是,我不希望禁用安全更新模式(并且有很多解决方案都建议这样做)。
同样,我知道将 WHERE 子句设置为匹配所有内容的 KEY-value 应该可以工作。但是,似乎无法在 mysql-workbench 上运行 - 至少不是我希望的方式(或它在控制台上的运行方式)。
例如,以下在 mysql-workbench 上不起作用(但在控制台上起作用):
UPDATE FUEL_SOURCES AS FS
INNER JOIN
FUEL_CATEGORY FC ON FC.FUEL_CATEGORY = FS.FUEL_CATEGORY
SET
FS.FUEL_CATEGORY_ID = FC.ID
WHERE
FC.ID <> 0 AND FS.ID <> 0
...如果我明确/准确地设置 ID(例如WHERE FC.ID = 20 AND FS.ID <> 10),它将在 mysql-workbench 中工作。但这样做将涉及遍历每个密钥对组合。
有兴趣知道是什么导致了这种行为,或者我是否做错了什么。使用 mysql-workbench 6.3
【问题讨论】:
-
请分享两个环境中删除的解释结果和两个表上定义的索引。
-
快速澄清 - 删除什么?一张桌子?两张表?其中一列?
标签: mysql sql-update mysql-workbench