gpt4 book ai didi

sql - Postgres 更新规则返回受影响的行数

转载 作者:搜寻专家 更新时间:2023-10-30 20:45:56 38 4
gpt4 key购买 nike

我有一个 View 表,它是两个单独表(比如表 _A 和表 _B)的联合。

我需要能够更新 View 表中的一行,似乎实现这一点的方法是通过“ View 规则”。 View 表中的所有条目都有单独的 ID,因此表 _A 中存在的 ID 不会存在于表 _B 中。

我创建了以下规则:

CREATE OR REPLACE RULE view_update AS
ON UPDATE TO viewtable DO INSTEAD ( UPDATE _A SET foo = false
WHERE old.id = _A.id;
UPDATE _B SET foo = false
WHERE old.id = _B.id;
);

如果我对表 _B 进行更新,它会返回受影响的正确行数 (1)。但是,如果我更新表 _A,即使数据已更改,它也会返回受影响的 (0) 行。如果我换掉更新的顺序,那么同样的事情会发生,但相反。

我怎样才能解决这个问题,以便它返回受影响的正确行数。

谢谢。

最佳答案

你不能。除非您在存储过程中执行此操作并返回受影响的行数。

官方解释的很好doc

关于sql - Postgres 更新规则返回受影响的行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2614163/

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