【发布时间】:2017-01-21 01:22:30
【问题描述】:
我有一个关于嵌套表的插入查询的问题。我有一个这样的对象:
CREATE OR REPLACE TYPE obj_animals as OBJECT (
row_id INTEGER,
animal_id INTEGER,
attr1 VARCHAR2(30),
attr2 VARCHAR2(30),
attr3 VARCHAR2(30)
);
我有一个这样的表类型:
CREATE OR REPLACE TYPE obj_animals_tab IS TABLE OF obj_animals;
嵌套表包含在这个:
CREATE TABLE animals
(
animal_id INTEGER,
animal_ptr obj_animals_tab
)
NESTED TABLE animals_ptr STORE AS obj_animals_tab;
如何使用动态 SQL 插入嵌套表中的 (row_id,animal_id,attr1) 列或 (row_id,animal_id & attr3) 列?
我尝试过这样的事情:
INSERT INTO animals(animal_id,animal_ptr(row_id,animal_id,attr3))
VALUES(1,obj_animals_tab(obj_animals(1,1,'4')));
这给了我一个错误:缺少逗号。你能告诉我实现这个的方法吗?谢谢!
【问题讨论】:
标签: sql oracle nested-table