PLS-00103:预期以下情况之一时遇到符号“ END”:

时间:2018-11-11 18:51:14

标签: oracle oracle11g oracle10g oracle-sqldeveloper

我正在学习PL / SQL,但找不到错误

我是阿迪达·塞洛·阿德莱斯特里亚人

  

ORA-06550:第52行,第5列:PLS-00103:遇到了符号“ END”   当期望以下之一时:

     
      
  • &=-+; 在in是mod余数,不是rem <>或!=或〜=> = <= <>   ||成员submultiset符号“;”被替换为“ END”   继续。
  •   

这是代码:

    DECLARE
    N_SUC NUMBER;
    N_CLIENTE NUMBER;
    N_TVENTA NUMBER;
    N_FECHA DATE;
    I_CLIENTE NUMBER;
    I_TVENTA NUMBER;
    begin
    N_SUC := 1;
    N_CLIENTE :=1;
    N_TVENTA :=1;
    I_CLIENTE :=1;
    I_TVENTA := 1;

    for loop_one in 1..4 
    loop
    FOR LOOP_two IN 1..25   
    LOOP

    IF N_TVENTA > 75 THEN
    I_TVENTA:= I_TVENTA + 1;
    END IF;

    if N_CLIENTE <=10 then
    I_CLIENTE:= 1;
    elsif N_CLIENTE >10 AND N_CLIENTE <= 20 then
    I_CLIENTE:= 2;
    elsif N_CLIENTE>20 AND N_CLIENTE <= 30 THEN
    I_CLIENTE:= 3;
    elsif N_CLIENTE>30 AND N_CLIENTE <= 40  then
    I_CLIENTE:= 4;
    elsif N_CLIENTE>40 AND N_CLIENTE <= 50 then
    I_CLIENTE:= 5;
    elsif N_CLIENTE>50 AND N_CLIENTE <= 60 then
    I_CLIENTE:= 6;
    elsif N_CLIENTE>60 AND N_CLIENTE <= 70 then
    I_CLIENTE:= 7;
    elsif N_CLIENTE>70 AND N_CLIENTE <= 80 then
    I_CLIENTE:= 8;
    elsif N_CLIENTE>80 AND N_CLIENTE <= 90 then
    I_CLIENTE:= 9;
    elsif N_CLIENTE>90 AND N_CLIENTE <= 100 then
    I_CLIENTE:= 10;                   
    end if;

    SELECT SYSDATE into N_FECHA FROM dual;
    INSERT INTO marcos.VENTA
    VALUES(SEQ_VENTA.nextval, 0, N_FECHA|| '-'||SEQ_VENTA, N_SUC, I_CLIENTE, I_TVENTA);

    N_CLIENTE:= N_CLIENTE+1;
    N_TVENTA:=N_TVENTA+1
    END LOOP;

    N_SUC := N_SUC+ 1;
    end loop ;
    commit; 
    EXCEPTION
    WHEN OTHERS THEN
      dbms_output.put_line('Se ha producido un error') ;
    rollback;               
    end;

1 个答案:

答案 0 :(得分:0)

您错过了第51行的行终止符(分号),在这里:

N_TVENTA:=N_TVENTA+1
相关问题