数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle:PL/SQL中如何使用Array


发布日期:2020年05月13日
 
Oracle:PL/SQL中如何使用Array

因为在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)就象多维数组一样

上一篇:Oracle客户端与数据库应用程序集成安装

下一篇:如何用Oracle10g列值掩码技术隐藏敏感数据?