PLS-00103: end not pragma, конечный инстанцируемый порядок, переопределяющий статическую карту конструктора элемента - PullRequest
0 голосов
/ 08 октября 2019

Я ошибаюсь при выполнении следующих кодов,

Вот мой код:

create member function for not instantiable not final type

create or replace type the_type as object 
(a1         xxx(50),
 a2         number(3), -- minutes
 a3             date,
member function fone return number,
member function ftwo (pString1 varchar2, pString2 varchar2) return integer)
not instantiable not final




create or replace type body the_type as
member function fone return number is
begin
return null;
end fone;

member function ftwo (pString1 varchar2, pString2 varchar2) return integer is
v_1 integer;
begin
    if INSTR(pString2,pString1) != 0 then
        v_1 := 1;
    else
        v_1 := 0;
    end if;
    return v1;
end ftwo ;

/

Это сообщение об ошибке

PLS-00103: Обнаружен символ «конец файла» при ожидании одного из следующих действий: конец, не прагма, конечный экземплярный порядок, переопределяющий статическую карту конструктора элемента

1 Ответ

1 голос
/ 08 октября 2019

Вам не хватает END ключевое слово:

create or replace type body the_type as
member function fone return number is
begin
return null;
end fone;

member function ftwo (pString1 varchar2, pString2 varchar2) return integer is
v_1 integer;
begin
    if INSTR(pString2,pString1) != 0 then
        v_1 := 1;
    else
        v_1 := 0;
    end if;
    return v_1; -- also this should be "v_1", not "v1"
end ftwo ;
end; -- this one
/

db <> Fiddle demo

Cheers !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...