加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle中IS TABLE OF的使用

发布时间:2020-12-12 15:01:00 所属栏目:百科 来源:网络整理
导读:ISTABLEOF :指定是一个集合的表的数组类型 , 简单的来说就是一个可以存储一列多行的数据类型。 INDEXBYBINARY_INTEGER :指索引组织类型 BULKCOLLECT :指是一个成批聚合类型 , 简单的来说 , 它可以存储一个多行多列存储类型,采用 BULKCOLLECT 可以将查询

ISTABLEOF :指定是一个集合的表的数组类型,简单的来说就是一个可以存储一列多行的数据类型。

INDEXBYBINARY_INTEGER:指索引组织类型

BULKCOLLECT:指是一个成批聚合类型,简单的来说,它可以存储一个多行多列存储类型,采用BULKCOLLECT可以将查询结果一次性地加载到集合中

【实例】在SCOTT模式下,使用IS TABLE OF获取所有员工的姓名,职务,工资信息。

declare
  type type_ename is table of emp.ename%type;   
  type type_job is table of emp.job%type;
  type type_sal is table of emp.sal%type;
  
  var_ename type_ename:=type_ename();
  var_job type_job:=type_job();
  var_sal type_sal:=type_sal();
begin
  select ename,job,sal 
  bulk collect into var_ename,var_job,var_sal
  from emp;
  
  /*输出雇员信息*/
  for  v_index in var_ename.first .. var_ename.last loop
      dbms_output.put_line('雇员名称:'||var_ename(v_index)||' 职务:'||var_job(v_index)||' 工资:'||var_sal(v_index));
  end loop;
end;

【实例】在模式下,使用IS TABLE OF获取所有员工的所有信息。

declare
   type emp_table_type is table of emp%rowtype index by binary_integer;
   var_emp_table emp_table_type;
begin
  select *
  bulk collect into var_emp_table
  from emp;
  
  /*输出雇员信息*/
  for i in 1..var_emp_table.COUNT loop
      dbms_output.put_line('雇员名称:'||var_emp_table(i).ename||' 职务:'||var_emp_table(i).job||' 工资:'||var_emp_table(i).sal);
  end loop;
end;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读