gpt4 book ai didi

mysql - 获取 UPDATE 的目标表时出错不可更新

转载 作者:行者123 更新时间:2023-11-29 06:50:50 25 4
gpt4 key购买 nike

我正在运行一个简单的 MySQL 查询来使用子查询进行更新。这是我写的查询

UPDATE (
SELECT IP2.ID, IP2.IP4, IP2.CLIENT FROM IP_ADDRESS IP2 WHERE IP2.V_NET = VNET_ID AND IP2.CLIENT IS NULL AND IP2.IP4 < (RANG_E - 1)
ORDER BY IP2.IP4, IP2.CLIENT LIMIT 1
)AS IP SET IP.CLIENT = C_ID;

运行后我收到以下错误:

The target table IP2 of the UPDATE is not updatable

我有一些相关问题mysql - The target table of the UPDATE is not updatableThe target table of the UPDATE is not updatable但我没有得到明确的答案。

我在这里缺少什么吗?我该如何编写这个查询?有什么帮助吗?

最佳答案

如果您的表上有主键,那么您就是安全的。

看看这次肮脏的旅行:

Try it at SQL Fiddle

示例表:

create table t( a char(1), i int );

insert into t values
('a', 1),
('b', 2),
('c', 3),
('d', 4);

通过pk更新

/* updating using double subquery, only way to use your same table */

update t
set a = 'z'
where i = (select i from (select * from t) t2 order by i desc limit 1);

将其应用到您的环境中。

关于mysql - 获取 UPDATE 的目标表时出错不可更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47576155/

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