Tom*_*más 2 sql select plsql record data-structures
我已经声明了一个记录变量:
Declare
TYPE WORK_REC IS RECORD(
STRING1 VARCHAR (21),
NUMBER1 NUMBER (05)
);
TARGET_REC WORK_REC;
...
Run Code Online (Sandbox Code Playgroud)
在某个时刻,我得到两个值,我必须将它们移至记录变量中。是否可以像这样使用单个 SELECT INTO ?
SELECT (<PROPER STRING VALUE> , <PROPER NUMBER VALUE> ) INTO TARGET_REC
Run Code Online (Sandbox Code Playgroud)
这里的重点是我想以一种简单的维护方式来填写我的记录。
是的,你可以这么做。只要所选的列在数量和类型上都与目标变量匹配。
create table rec_test( s1 varchar2(21), n1 number(5));
insert into rec_test (s1,n1) values('ABC',2) ;
declare
type work_rec is record(
string1 varchar2 (21),
number1 number (05)
);
target_rec work_rec;
begin
select s1, n1
into target_rec
from rec_test;
dbms_output.put_line( 'rec=(' || target_rec.string1 || ',' || target_rec.number1 || ')' );
end ;
Run Code Online (Sandbox Code Playgroud)