我们正在存储其他表名和列以进行数据迁移的表中有一个表(查找)。
查找
|表_1 | colunum_name |条件 | table_target1 |表_2 | colunum_name |条件 |表_target2 |表_3 | colunum_name |条件 | table_target3
我们需要将数据从一个模式传输到另一个模式(不是所有的值只有特定的值)。由于 forall 语句中的数据类型,以下查询不起作用。我们如何执行此操作?
宣告
cursor lkp is select * from lookup;
c1 lkp%rowtype;
v1 varchar2(50);
v2 varchar2(50);
v3 varchar2(50);
v4 varchar2(50);
begin
for c1 in lkp loop
v1:=c1.table;
v2:=c1.lum;
v3:=c1.cnd;
v4:=c1.tbl;
forall indx in select * from ||v1;
execute immediate 'insert into' || v4 ||'(select' ||v2.indx|| 'from ' v1;
end loop;
end;