如何在PL / SQL中创建两个表的记录类型?

时间:2016-11-14 04:05:31

标签: plsql

我有两个表A,B,有很多列和一个光标

CURSOR Cur  
IS 
select A.*, B.* FROM A,B

我想将光标提取到存储两个表的行类型的TYPE中。 但是,我不想通过键入两个表的所有列名来创建TYPE。我尝试了以下但是它们都不起作用。

--1

RecA                 A%RowType
RecB                 B%RowType
FETCH Cur INTO RecA, RecB

--2

RecA                 A%RowType
RecB                 B%RowType
RecAB                A||B%RowType
FETCH Cur INTO RecAB

P.S。问题可以通过使用两个游标来解决,但我想知道是否有一种方法可以连接两个行类型。

1 个答案:

答案 0 :(得分:2)

阅读the fine manual

enter image description here

  

<强> explicit_cursor_name

     

显式游标的名称。对于与 explicit_cursor_name 关联的查询选择的每个列,记录都有一个具有相同名称和数据类型的字段。

所以你可以简单地说:

type cur_t is cur%rowtype;

另见the examples

相关问题