且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

在 pl/sql 中的同一过程中创建表和插入

更新时间:2022-12-03 15:00:43

该过程无法编译,因为在编译时该表不存在.

The procedure cannot be compiled because the table is not present at compile time.

将插入也包裹在立即执行中,或者使用全局临时表(通常是临时数据的首选解决方案).

Wrap the insert in execute immediate also, or use a global temporary table (generaly the preferred solution for temporary data).

create or replace procedure insertval8 (id   in number,
                                        name in char  )
is
begin

  execute immediate 'create table edu2(id number(20), name char(12))';
  execute immediate 'insert into  edu2(id, name) values (:1, :2)'
              using id, name;
end;