gpt4 book ai didi

stored-procedures - PL SQL过程警告已编译错误PLS-00103

转载 作者:行者123 更新时间:2023-12-03 08:29:20 25 4
gpt4 key购买 nike

我从PL/SQL开始,这是我的第一个过程,我发现很难编译。我尝试了许多不同的版本,我进行了最后一次尝试。我不明白为什么SQLDEVELOPER对我说:“过程已编译(有错误)”。

编译器对我说:“Errore(10,1):PLS-00103:Trovato il simbolo(查找)” DECLARE“代替:begin函数pragma过程子类型类型当前游标删除存在于”

如果还有其他错误(也是逻辑错误),请告诉我。我想改善。

谢谢大家的回答

我的程序:

create or replace PROCEDURE calcola_giorn (giornata IN INTEGER) is
-- si tenga presente che in realtà giornata=idPartita
somma NUMBER;
idcal NUMBER;
nometorn VARCHAR2;
idformaz NUMBER;
nomesquadr VARCHAR2;

DECLARE;

SELECT idcalendario INTO idcal FROM partita WHERE id= giornata;

SELECT nometorneo INTO nometorn FROM calendario WHERE id= idcal;

CURSOR formazioni_di_giornata IS
SELECT id, nomesquadra FROM formazione where idpartita= giornata;

CURSOR giocatori_di_giornata IS
SELECT votogiocatore FROM schiera WHERE idformazione= idformaz;


Begin
OPEN formazioni_di_giornata;
FOR tupla_formazione IN formazioni_di_giornata LOOP
somma:=0;
FETCH formazioni_di_giornata INTO idformaz, nomesquadr;
OPEN giocatori_di_giornata;
FOR tupla_giocatore IN giocatori_di_giornata LOOP
somma:= somma + tupla_giocatore.votogiocatore;
END LOOP;
CLOSE giocatori_di_giornata;
UPDATE partecipa SET punti= somma WHERE ( (nomesquadra= nomesquadr) AND (nometorneo= nometorn));
END LOOP;
CLOSE formazioni_di_giornata;

EXCEPTION WHEN OTHERS THEN raise_application_error(-20001,'An error was encountered - '||SQLCODE||' -ERROR- '||SQLERRM);
END calcola_giorn;

最佳答案

  • 应该定义Varchar限制,例如varchar2(100)
  • 替换DECLARE;与BEGIN
  • 您所有的光标都应在BEGIN
  • 之前
  • 输入END;对于过程

  • 进行这些更改后,您可以尝试编译。

    关于stored-procedures - PL SQL过程警告已编译错误PLS-00103,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24068092/

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