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

前端之家收集整理的这篇文章主要介绍了数组 – 如何在PL / SQL中手动初始化RECORDs集合?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
家伙.这是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;
原文链接:https://www.f2er.com/mssql/81495.html

猜你在找的MsSQL相关文章