create or replace procedure abc
as
CURSOR SelectContent IS
select * from jiang.source1;
begin
for cursor1 in SelectContent
loop
  
execute immediate  'insert into result(药名,'||cursor1.物种名||') values(cursor1.药名,cursor1.weight)';
dbms_output.put_line('物种名'||cursor1.物种名||' is inserted into the table result!');
End loop;
end abc;编译成功,执行报错如下:SQL> exec abc;
BEGIN abc; END;*
第 1 行出现错误:
ORA-00984: 列在此处不允许
ORA-06512: 在 "JIANG.ABC", line 8
ORA-06512: 在 line 1我的想法是:向表result中插入数据,而要插入的列的列名是从表source1中查询出来的。