更新语句使 Datagrip 抱怨缺少 WHERE 子句

Update statement makes Datagrip complain about missing WHERE clause

我正在玩弄一个数据库,我正在生成随机数据来测试我的前端。每次我希望以某种方式设置每一行时,我都会写

UPDATE medley
SET option = true

此时 Datagrip 抱怨缺少 WHERE 子句警告我我的查询将更新整个 table。但这就是我想要的! 有没有我可以使用的通用 WHERE 子句,例如 WHERE any?

现在我已经添加了一个 ID,这样我就可以 WHERE id >= 0 但我很好奇是否还有其他选择。

您可以添加始终为真的 where 子句:

UPDATE medley
  SET option = true
WHERE true;

在 DataGrip 中,有一个设置需要更改。 它将阻止您 运行 这些查询,并预先向您显示警告。

Unsafe query: Update statement without where clause updates all table rows

您将收到错误:错误代码:1175,因为您正在使用安全模式。

要禁用安全模式:

toggle the option in Preferences -> SQL Editor and reconnect

在你运行这种查询之后,有执行执行并禁止[=11=的选项]