gpt4 book ai didi

sql - PL/pgSQL 函数似乎选择了错误的变量?

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

我正在努力使这项工作正常进行,并且我在没有两个 artikli_racun 更新的情况下对其进行了测试并且它工作正常。因此,如果我只有 cena(price),它将起作用并且需要 2 美元,但这里很明显它表示行“artikel”不存在,我不知道该怎么做。它需要 1 美元,我需要一个解决方案来解释为什么它需要这个变量...

NAPAKA:  stolpec "artikel" ne obstaja

KONTEKST: SQL statement "UPDATE artikli_racun SET id_artikla=(SELECT id FROM artikli WHERE ime=$1 ) WHERE artikel= $1 "
PL/pgSQL function "racun123" line 6 at SQL statement


CREATE OR REPLACE FUNCTION racun123(integer,varchar) RETURNS
BOOLEAN AS
$$
BEGIN
IF (SELECT zaloga FROM artikli WHERE ime=$2)>0 THEN
INSERT INTO racun1(id,artikel) VALUES($1,$2);
UPDATE racun1 SET cena=(SELECT prodajna_cena FROM artikli WHERE
ime=$2) WHERE artikel=$2;
UPDATE artikli_racun SET id_artikla=(SELECT id FROM artikli WHERE
ime=$2) WHERE artikel=$2;
UPDATE artikli_racun SET id_racuna=(SELECT id FROM racun1 WHERE
ime=$2) WHERE artikel=$2;
UPDATE artikli set zaloga=zaloga-1 WHERE ime=$2;
RETURN true;
ELSE RETURN false;
END IF;
END;
$$LANGUAGE plpgsql;

最佳答案

根据错误消息表 artikli_racun 缺少列 artikel。顺便说一下,有多个更新语句对同一个表进行操作 - 它们可以合并为一个。

关于sql - PL/pgSQL 函数似乎选择了错误的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26768729/

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