PL/SQL中应该如何使用Array

王朝mssql·作者佚名  2008-05-19
宽屏版  字体: |||超大  

---------------------- 单维数组 ------------------------

DECLARE

TYPE emp_ssn_array IS TABLE OF NUMBER

INDEX BY BINARY_INTEGER;

best_employees emp_ssn_array;

worst_employees emp_ssn_array;

BEGIN

best_employees(1) := '123456';

best_employees(2) := '888888';

worst_employees(1) := '222222';

worst_employees(2) := '666666';

FOR i IN 1..best_employees.count LOOP

DBMS_OUTPUT.PUT_LINE('i='|| i || ', best_employees= ' ||best_employees(i)

|| ', worst_employees= ' ||worst_employees(i));

END LOOP;

END;

---------------------- 多维数组 ------------------------

DECLARE

TYPE emp_type IS RECORD

( emp_id employee_table.emp_id%TYPE,

emp_name employee_table.emp_name%TYPE,

emp_gender employee_table.emp_gender%TYPE );

TYPE emp_type_array IS TABLE OF

emp_type INDEX BY BINARY_INTEGER;

emp_rec_array emp_type_array;

emp_rec emp_type;

BEGIN

emp_rec.emp_id := 300000000;

emp_rec.emp_name := 'Barbara';

emp_rec.emp_gender := 'Female';

emp_rec_array(1) := emp_rec;

emp_rec.emp_id := 300000008;

emp_rec.emp_name := 'Rick';

emp_rec.emp_gender := 'Male';

emp_rec_array(2) := emp_rec;

FOR i IN 1..emp_rec_array.count LOOP

DBMS_OUTPUT.PUT_LINE('i='||i

||', emp_id ='||emp_rec_array(i).emp_id

||', emp_name ='||emp_rec_array(i).emp_name

||', emp_gender = '||emp_rec_array(i).emp_gender);

END LOOP;

END;

-------------- Result --------------

i=1, emp_id =300000000, emp_name =Barbara, emp_gender = Female

i=2, emp_id =300000008, emp_name =Rick, emp_gender = Male

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有