mysql 错误代码:1175,您正在使用安全更新模式,并且试图更新一个没有使用KEY列的WHERE的表

okxuctiv  于 2023-04-05  发布在  Mysql
关注(0)|答案(5)|浏览(194)

我试图运行一个更新查询,其中实际id看起来像1273106/2使用以下查询,但运行到下面的错误,有人可以帮助如何修复它?

UPDATE ids.id_submit_table SET picked_bit='1' 
        WHERE (id like '1273106')

行看起来像下面

126 1273106/2   AL.BH.1.1.1 SU_CNSS_BT_FM_AL.BH.1.1.1 username  0   0

错误:-

Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
 To disable safe mode, toggle the option in Preferences -> SQL Queries and reconnect.   0.000 sec
g6baxovj

g6baxovj1#

出现此错误是因为安全更新模式需要key来更新/删除with where子句,您可以使用
SET SQL_SAFE_UPDATES=0;
在执行查询之前,或者如果你想避免将来出现这种情况,请确保使用带有where子句的key进行update/delete

dgenwo3n

dgenwo3n2#

试试这个解决问题。
要在MySQL Workbench 8.0中永久禁用安全更新模式,您应该执行以下操作:
进入【编辑】→【首选项】。
单击“SQL编辑器”选项卡,取消选中“安全更新”(拒绝更新和删除,无限制)复选框。
查询--〉重新连接服务器

czfnxgou

czfnxgou3#

这是MySQL Workbench的问题,而不是MySQL本身。您可以通过任何其他MySQL客户端尝试,或者您可以在Workbench首选项中关闭安全查询。

8i9zcol2

8i9zcol24#

点击编辑并找到首选项。找到SQL编辑器点击它,到底部,取消选中点击确定。
现在后藤服务器,找到启动并关闭,停止服务器并重新启动

vcudknz3

vcudknz35#

这是一个MySQL Workbench问题。
不要在workBench中执行查询,而是使用CLI客户端连接到MySQL,并在那里运行更新/删除查询。
此更改也将反映在WorkBench中。

相关问题