?
?set serverout on
?declare
? var_tmp ? ? varchar2(4000) :='';
? var_element varchar2(4000) :='';?
? ? n_length ? ?Number := length('\/');
?begin
? ?values_array := VARCHAR_ARRAY(); -- 初始化數組
? ? ?for i in ?(select ?* from sapsr3.zmdm_mthdr where zmtpre in('6200001220','6200001225'))
? ? ?loop
? ? ?
? ? ? ? ? ?dbms_output.put_line('導入編號:'||i.zmtpre||' 長描述:'||i.znote_tzz ||' 模板編碼:'||i.zkey || '特征值數量:' ||); ?
? ? ? ?var_tmp := i.znote_tzz;
? ? ? ?while instr(var_tmp, '\/') >0 loop
? ? ? ?var_element := substr(var_tmp, 1, instr(var_tmp, '\/') - 1);
? ? ? var_tmp ?:= substr(var_tmp, instr(var_tmp, '\/') + n_length, ?length(var_tmp));?
? ? ??
? ? ? ?dbms_output.put_line('特征量:' || var_element);?
? ? ? ?values_array.extend; -- 擴展數組, 以便于給數組賦值?
? ? ? ?values_array(i) := var_element; -- 賦值的時候,下標必須從 1 開始,否則會出現 “ 下標超出數量 ” 的錯誤
? ? ? ? ?end loop;?
? ? ? ?
? ? ? ? ?for l in ( select * from sapsr3.ZMDM_MM_TZL where zkey=i.zkey order by serno asc)
? ? ? ??
? ? ? ? ?dbms_output.put_line( ?'特征量 : ' || values_array(i));
? ? ? ? end loop;?
? ? end loop;
? ? commit;
?end;