您的位置:首页 > 数据库 > Oracle

Oracle存储过程传递数组参数

2012-02-24 21:22 190 查看
今天晚上,和同事聊起Oracle存储过程传递数组参数能否使用数据,之后就在自己的电脑上试试,试了试是可以使用。

代码:

先要定义一个类型myvarray_list 数组的长度是10,数组中存放的数据类型是varchar2。

SQL> create or replace type myvarray_list as varray(10) of varchar2(50);

  2  /

类型已创建。

SQL> create or replace procedure show_list(

  2  p_varlist in myvarray_list

  3  )

  4  is

  5  str varchar2(50);

  6  begin

  7  for x in 1..p_varlist.count loop--使用一个循环

  8  INSERT INTO t_zzjg(ZZJGDM, ZZJGMC, SSJGDM)  VALUES (x,p_varlist(x),x);  

 9  end loop;

 10  end;

 11  /

过程已创建。

SQL> exec show_list(myvarray_list('Oracle','DB2','Sql Server','mySql','DBA'));

PL/SQL 过程已成功完成。

在查看t_zzjg这样表里就将5条数据插进去了。

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息