Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PL/SQL:ORA-00920:无效的关系运算符_Sql_Oracle_Plsql - Fatal编程技术网

PL/SQL:ORA-00920:无效的关系运算符

PL/SQL:ORA-00920:无效的关系运算符,sql,oracle,plsql,Sql,Oracle,Plsql,我得到这个错误 23/112 PL/SQL:ORA-00920:无效的关系运算符 它指向当前的声明 CREATE OR replace PROCEDURE alga_uz_pasirodyma(grupe_id in grupes.id%TYPE, alga in out number) IS v_kliento_id nariai.asm_kodas%TYPE; TYPE bendras IS RECORD ( alga number ); globalus bendras; CURSOR

我得到这个错误
23/112 PL/SQL:ORA-00920:无效的关系运算符 它指向当前的声明

CREATE OR replace PROCEDURE alga_uz_pasirodyma(grupe_id in grupes.id%TYPE, alga in out number)
IS 
v_kliento_id nariai.asm_kodas%TYPE;
TYPE bendras IS RECORD (
alga number
);
globalus bendras;
 CURSOR c_klientai IS
 SELECT nariai.asm_kodas
 FROM nariai
 where nariai.fk_grupe = grupe_id
 FOR UPDATE OF nariai.alga;

BEGIN  
  globalus.alga:= alga; 
  IF grupe_id <= 0 THEN
         raise_application_error(-20101, 'Nepavyko surasti grupes');
  END IF;
 OPEN c_klientai;
 LOOP
 FETCH c_klientai INTO v_kliento_id;
 EXIT WHEN c_klientai%NOTFOUND;
 UPDATE nariai set nariai.alga = nariai.alga * globalus.alga where nariai.asm_kodas = v_kliento_id AND CURRENT OF c_klientai;
 END LOOP;
 UPDATE grupes set grupes.pasirodymu_kiekis = grupes.pasirodymu_kiekis + 1  where grupes.id = grupe_id;
SELECT max(nariai.alga) into alga from nariai where nariai.fk_grupe = grupe_id;
 CLOSE c_klientai;
END alga_uz_pasirodyma;
创建或替换过程alga_uz_pasirodyma(grupe_id in grupes.id%TYPE,alga in out number)
是
v_kliento_id nariai.asm_kodas%类型;
bendras型为记录型(
藻类数量
);
本德拉球藻;
光标c_klientai为
选择nariai.asm\u kodas
来自nariai
其中nariai.fk_grupe=grupe_id
更新nariai.alga;
开始
globalus.alga:=藻类;
如果grupe_id“CURRENT OF”应该单独出现在where子句中。它允许您在光标的当前循环迭代中更新或删除记录


另一方面,我没有看到您在循环中做任何有意义的事情来保证游标。如果这会改变,请忽略此注释,否则只需运行更新“where nariai.fk_grupe=grupe_id”

谢谢您的输入,但我应该在代码中更改什么以避免错误呢DUPDATE nariai set nariai.alga=nariai.alga*globalus.alga,其中c_klientai的电流;