我有下面的对象:甲骨文记录类型VS对象
create type dep_rec_typ as object (did number, dnm varchar2(30));
create type emp_rec_type as object (eid number, enm varchar2(30));
create type emp_tab_typ as table of emp_rec_type;
create type dep_det as object (dep_det dep_rec_typ
, emp_det emp_tab_typ);
当运行利用上述对象的代码完美运行下面的代码。
declare
v_emp emp_rec_type;
v_dep dep_rec_typ;
c_dep_dt dep_det;
begin
select did, dnm
into v_dep
where did = 100;
select eid, enm
bulk collect into v_emp
where did = 100;
select dep_det(v_dep, v_emp)
into c_dep_dt
from dual;
end;
但是当我使用RECORDS在包级别创建上述对象时,我面临错误。 请让我知道 1.如何在不使用数据库级别的对象的情况下编写相同的代码。 2.为什么我在包级别创建RECORDS时面临错误。
注:我无法更改任何对象的结构。
你面临什么错误?你怎么能从包级别调用它? –
嗨我使用记录时遇到的错误是PLS-00597 – Narender
你怎么能从包级别调用它?分享你的执行代码。 –