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

数组 – 如何在PL / SQL中手动初始化RECORDs集合?

发布时间:2020-12-12 16:42:18 所属栏目:MsSql教程 来源:网络整理
导读:家伙.这是PL / SQL中的一个简单的示例二维数组,它的工作正常. declare type a is table of number; type b is table of a; arr b := b(a(1,2),a(3,4));begin for i in arr.first .. arr.last loop for j in arr(i).first .. arr(i).last loop dbms_output.put
家伙.这是PL / SQL中的一个简单的示例二维数组,它的工作正常.
declare
  type a is table of number;
  type b is table of a;

  arr b := b(a(1,2),a(3,4));
begin
  for i in arr.first .. arr.last loop
    for j in arr(i).first .. arr(i).last loop
      dbms_output.put_line(arr(i) (j));
    end loop;
  end loop;
end;

我需要做的是创建一个类似于RECORDS表的东西.喜欢这个:

type a is record(a1 number,a2 number);
 type b is table of a;

问题是,我可以手动初始化这种类型的数组,还是应该通过批量收集或类似的方式填充?与上述相同的语法似乎不起作用,我无法在手册中找到任何初始化示例.

解决方法

RECORDs没有“构造函数”语法,所以你必须像这样填充它们:
declare
 type a is record(a1 number,a2 number);
 type b is table of a;
 arr b := b();
begin
 arr.extend(2);
 arr(1).a1 := 1;
 arr(1).a2 := 2;
 arr(2).a1 := 3;
 arr(2).a2 := 4;
end;

(编辑:李大同)

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

    推荐文章
      热点阅读