我有一个基于对象a_obj的表a:
CREATE TYPE a_obj IS OBJECT (
a1 INTEGER,
a2 integer
);
CREATE TABLE a OF a_obj (
CONSTRAINT a__a1__pk PRIMARY KEY (a1)
);
有时我想 Select 一列:
select a.* from a -- it works
有时我想 Select 对象a_obj.
select a_obj(a.a1,a.a2) from a; --works
但我不想重写所有列的名称,因为我可以写很多列,很容易忘记一列.
我试着这样做:
select a_obj(a.*) from a;
ORA-01747:无效用户.桌子列,表.列或列规格
它不起作用.
有没有办法做到这一点?
这也行不通:
declare
ret a_obj;
begin
select a.* into ret
from a;
end;