/*用动态sql 创建表做了一个存储过程*/
create or replace procedure proc_test
(
table_name in varchar2,
field1 in varchar2,
datatype1 in varchar2,
field2 in varchar2,
datatype2 in varchar2
) is
str_sql varchar2(500);
begin
str_sql:='create table '||table_name||' ('||field1||' '||datatype1||','||field2||' '||datatype2||' )';
execute immediate str_sql;
end ;SQL〉execute porc_test(' dinya_test','id','number(8) not null',' name','varchar2(10)');begin porc_test(' dinya_test','id','number(8) not null',' name','varchar2(10)'); end;ORA-01031: 权限不足
ORA-06512: 在"YAA.PORC_TEST", line 11
ORA-06512: 在line 1问题:现在我的帐户已经是dba权限了,请教各位,我应该如何解决!急切等待!!
create or replace procedure proc_test
(
table_name in varchar2,
field1 in varchar2,
datatype1 in varchar2,
field2 in varchar2,
datatype2 in varchar2
) is
str_sql varchar2(500);
begin
str_sql:='create table '||table_name||' ('||field1||' '||datatype1||','||field2||' '||datatype2||' )';
execute immediate str_sql;
end ;SQL〉execute porc_test(' dinya_test','id','number(8) not null',' name','varchar2(10)');begin porc_test(' dinya_test','id','number(8) not null',' name','varchar2(10)'); end;ORA-01031: 权限不足
ORA-06512: 在"YAA.PORC_TEST", line 11
ORA-06512: 在line 1问题:现在我的帐户已经是dba权限了,请教各位,我应该如何解决!急切等待!!
你可以为你的dba角色用户再加上create any table 的权限试试 如果这样还不行 估计在存储过程里面是不是动态创建表的