我做了以下事情:
create or replace type my_row as object ( lname varchar2(30),fname varchar2(30),MI char(1),hohSSN char (9),hohname VARCHAR2(63),hohDob char(10),dob DATE ); create or replace type eiv.my_rec as table of eiv.my_row;
但后来做了如下查询:
my_records my_rec
select '','',sysdate bulk collect into my_records from dual;
给出错误ORA-00947:没有足够的值
我在这里做错了什么?
解决方法
使用批量收集填充SQL类型时,我们需要包含行(而不是表)类型.
select my_row ('',sysdate ) bulk collect into my_records from dual;