Compiler errors Oracle创建类型时出现编译错误
我创建了一个类型,如下所示:Compiler errors Oracle创建类型时出现编译错误,compiler-errors,object-oriented-database,Compiler Errors,Object Oriented Database,我创建了一个类型,如下所示: create type age_t as object( dob DATE, member function age_f return number); / 为了定义主体,我编写了以下代码: create or replace type body age_t as( member function age_f return number is v_dob date; age number(3)
create type age_t as object(
dob DATE,
member function age_f return number);
/
为了定义主体,我编写了以下代码:
create or replace type body age_t as(
member function age_f return number is
v_dob date;
age number(3);
v_dob := to_date(dob);
begin
age := trunc(months_between(sysdate,v_dob))/12;
return age;
end;
end;
);
/
Oracle向我提供了编译错误消息。
请告诉我问题出在哪里。
我正在使用oracle 11g sql客户端。在创建主体类型定义中,删除“创建或替换主体年龄为”语句之后“/”之前的括号“()”。 另外,将v_dob:=to_date(dob)语句放入开始和结束部分,或者在创建期间初始化v_dob。即v_dob date:=截止日期(dob) 无编译错误的正确代码
`create or replace type body age_t as
member function age_f return number is
v_dob date := to_date(dob);
age number(3);
begin
age := trunc(months_between(sysdate,v_dob))/12;
return age;
end;
end;
/`
你可以在这里找到更多