1 create or replace procedure p_test
2 as
3 begin
4 execute immediate 'create table t4(id number)';
5 insert into t4 values(3); --将会报错
6* end;
SQL> /
警告: 创建的过程带有编译错误。
SQL> show errors
PROCEDURE P_TEST 出现错误:
LINE/COL ERROR
-------- -----------------------------------------------------------------
5/1 PL/SQL: SQL Statement ignored
5/13 PL/SQL: ORA-00942: 表或视图不存在
SQL> ed
已写入文件 afiedt.buf
1 create or replace procedure p_test
2 as
3 begin
4 execute immediate 'create table t4(id number)';
5 --insert into t4 values(3); --将会报错
6 execute immediate 'insert into t4 values(3)';
7* end;
SQL> /
过程已创建。
SQL> exec p_test;
PL/SQL 过程已成功完成。
SQL> select * from t4;
ID
----------
3
SQL>
[@more@]来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/728254/viewspace-908393/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/728254/viewspace-908393/
本文介绍了一个使用PL/SQL创建并执行过程的例子。首先尝试创建包含表创建语句和插入语句的过程,但由于表不存在导致错误。通过先创建表再插入数据的方式,成功执行了过程,并验证了数据的正确插入。
1704

被折叠的 条评论
为什么被折叠?



