0
挑战:

来自一个名为 CARS_TABLE 的表,其中包含两列 ID 和 Model,信息如下: 
1 Ferrari
2 Audi
3 Mustang
创建另一个表(在  中名为 CARS_OBJECTS_TABLE)后, 
只有一个列是对象类型,我已经完成了下面的代码...
/
CREATE TYPE CAR_OBJECT AS OBJECT
    (ID number,
    Model varchar2(30))
/
CREATE TABLE Cars_Object_Table(
    Car_Column CAR_OBJECT)

-- 现在的挑战是获取两列,ID 和模型, 
第一个表 CARS_TABLE,放入对象列 Car_column 
第二个表CARS_OBJECT_TABLE。 

到目前为止,我已经提出了以下内容,它不会产生错误, 
但也不会填充第二个表的对象列。

CREATE TYPE CAR2 UNDER CAR (
    IDs number,
    Models varchar2(30),
DECLARE
    Car_Object CAR2;
    cursor importData is select * from cars_table;
BEGIN
    open importData; 如果 importData%found 则
    循环
    将 importData 提取到 CAR2 (IDs, Models)         然后         插入 Cars_Object_Table             值CAR2 (IDs, Models); else         exit;     end  if ;
    



    


    结束循环;
    关闭导入数据;
结尾;
/

有什么想法吗? 


4

1 回答 1

1

您可以使用一条insert .. select语句在 SQL 中执行此操作。但是,您必须首先将您的 cars_table 数据选择到 car_objects 中,然后再插入。

insert into cars_object_table
select car_object(id, model) from cars_table;
于 2012-11-14T16:38:44.483 回答