插入嵌套表plsql

时间:2017-04-19 10:43:28

标签: oracle plsql sql-insert nested-table

我是一个使用pl sql的新手,我在插入嵌套表时面临一些问题(我只是使用这些来测试一个过程)。 所以我的代码是:

insert into t_prenotazioni
      (nro_cliente, data_disponibilita)
    values
      (righe.nro_cliente, v_data_disponibilita);

其中t_prenotazioni是由我定义的类型的表,righe.nro_cliente是我从游标获得的值,而v_data_disponibilita是一个变量。 我得到的错误是:

  

PLS-00330无效使用类型名称或子类型

1 个答案:

答案 0 :(得分:1)

您可能正在尝试执行以下操作:

declare
    type type_prenotazioni is record(nro_cliente number, data_disponibilita date);
    type prenotazioni is table of type_prenotazioni;
    vPrenotazioni prenotazioni;
begin
    vPrenotazioni := new prenotazioni();
    vPrenotazioni.extend(1);
    vPrenotazioni(1).nro_cliente := 10;
    vPrenotazioni(1).data_disponibilita := sysdate;
    --
    for i in vPrenotazioni.first .. vPrenotazioni.last loop
        dbms_output.put_line(vPrenotazioni(i).nro_cliente || ' - ' ||
                                to_char(vPrenotazioni(i).data_disponibilita, 'dd/mm/yyyy')
                               );
    end loop;
end;

我强烈建议您查看the Oracle documentation以提高您的知识水平;这只是一个简单的小例子,但你可能想做很多不同的事情。