PLS-00103: обнаружен символ “СОЗДАТЬ”

#plsql

#plsql

Вопрос:


он показывает ошибку в 27 строке создания или замены функции Buffalo

     Declare

    random_number number(4);

    user_number number(4);

    cow number(1);

    buffaloes number(1):=0;

    begin

    random_number:=uniquetest(random_number);

    /*random_number:=dbms_random.value(1000,9999);*/

    dbms_output.put_line(random_number);

    user_number:=amp;user_number;


    while(user_number!=random_number)

    loop

    buffaloes:=Buffalo(user_number,random_number);

    dbms_output.put_line('0'||'c'||buffaloes||'B');

    buffaloes:=0;

    user_number:=0;
    user_number:=amp;user_number;

    end loop;
    end;

    /*error in this line */
    create or replace function Buffalo
    (user_number in number,random_number in number)

    return  number 
    is

    user_comparision number(1);

    random_comparision number(1);

    buffaloes number(1);

    user_number1 number(4):=user_number;

    random_number1 number(4):=random_number;

    begin

    while(user_number!=random_number)

    loop



    user_comparision:=user_number1 mod 10;

    random_comparision:=random_number1 mod 10;

    user_number1:=user_number1/10;

    random_number1:=random_number1/10;

    if(user_comparision = random_comparision)
    then

    buffaloes:=buffaloes 1;

    end if;

    end loop;

    return buffaloes;

    end;/
 

он показывает ошибку в инструкции create. кто-нибудь может помочь мне в решении этой ошибки.

Расскажите, как решить эту ошибку инструкции create.

он показывает ошибку в инструкции create. кто-нибудь может помочь мне в решении этой ошибки.

Расскажите, как решить эту ошибку инструкции create.

Ответ №1:

Вы должны сделать из него 2 сценария. В настоящее время вы начинаете с анонимного блока, который фактически вызывает функцию buffalo, хотя он еще не создан.

Кстати, и анонимный блок, и функция, похоже, создают какой-то бесконечный цикл, поэтому я не уверен, чего вы пытаетесь достичь здесь.. Не зная предыстории этой проблемы, невозможно дать решение.