因为在PL/SQL中并没有数组这是我查资料找的范例和自己写的范例来解释如何在PL/SQL中使用数组也许很多人已知道不过就是让不知道的朋友们了解一下吧
单维数组
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() := ;
best_employees() := ;
worst_employees() := ;
worst_employees() := ;
FOR i IN unt LOOP
DBMS_OUTPUTPUT_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_tableemp_id%TYPE
emp_name employee_tableemp_name%TYPE
emp_gender employee_tableemp_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_recemp_id := ;
emp_recemp_name := Barbara;
emp_recemp_gender := Female;
emp_rec_array() := emp_rec;
emp_recemp_id := ;
emp_recemp_name := Rick;
emp_recemp_gender := Male;
emp_rec_array() := emp_rec;
FOR i IN unt LOOP
DBMS_OUTPUTPUT_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= emp_id = emp_name =Barbara emp_gender = Female
i= emp_id = emp_name =Rick emp_gender = Male
注在PL/SQL中是没有数组(Array)概念的但是如果程序员想用Array的话就得变通一下用TYPE 和Table of Record来代替多维数组一样挺好用的
emp_type 就好象一个table 中的一条record 一样里面有id namegender等emp_type_array 象个table 里面含有一条条这样的record (emp_type)就象多维数组一样