使用PL / SQL过程从Oracle中的现有表创建表时,为什么会出现错误

时间:2017-04-20 02:01:11

标签: oracle

这是我的代码:

create or replace procedure p1
as
begin
create table emp_1 as (select * from emp);
end;

sql>exec p;

然后我收到此错误:

as ORA-06550: line 1, column 7: 
PLS-00306: wrong number or types of arguments in call to 'P1' 
ORA-06550: line 1, column 7: 
PL/SQL: Statement ignored

2 个答案:

答案 0 :(得分:3)

你有几个不明确的问题:

  1. 您的程序是p1并执行p。为什么?
  2. 您无法在select或其他DML之类的过程中执行create table语句。使用“EXECUTE IMMEDIATE”语句。
  3. 为什么要尝试在程序中创建表?您可以直接执行语句而无需执行任何操作。

答案 1 :(得分:0)

试试这个......

$verbose = fopen ( 'php://temp', 'w+' );
curl_setopt ( $curlManager, CURLOPT_VERBOSE, true );
curl_setopt ( $curlManager, CURLOPT_STDERR, $verbose );