数据库创建TYPE类型

一般的函数返回值只有一个,当我们需要返回多个值的时候,可以利用管道流,循环往一个表中加数据,租后返回这个管道流,其实相当于一个结果表或者是表。

然后我们就可以从这个表中获取想要的数据。这里我们可以新建一种type类型,便于我们存储数据。
直接贴代码:

declare
  i_count integer;
begin 
  SELECT count(1) into i_count FROM user_types a where a.type_name = 'MAP_OBJECT_N2N';
  if i_count = 0 then 
    execute immediate 'CREATE OR REPLACE TYPE "MAP_OBJECT_N2N" as object
(
   c_key1      VARCHAR2(50),
   c_key2      VARCHAR2(50),
   c_key3      VARCHAR2(50),
   c_value1    VARCHAR2(100),
   c_value2    VARCHAR2(100),
   c_value3    VARCHAR2(100)
)';
  end if; 
end;
/

declare
  i_count integer;
begin 
  SELECT count(1) into i_count FROM user_types a where a.type_name = 'T_MAP_OBJECT_N2N';
  if i_count = 0 then 
    execute immediate 'CREATE OR REPLACE TYPE "T_MAP_OBJECT_N2N" AS TABLE OF MAP_OBJECT_N2N';
  end if; 
end;
/

上面建好类型之后,我们就可以这么去使用了。下图展现如何取使用:
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值