我的程序如下:create or replace procedure aaa
is
ssql varchar2(1000);
begin
ssql:='create table asdf as select * from gyf_c';
execute immediate ssql;
end aaa;哪位高手帮忙解决下??
is
ssql varchar2(1000);
begin
ssql:='create table asdf as select * from gyf_c';
execute immediate ssql;
end aaa;哪位高手帮忙解决下??
解决方案 »
- 请指点哪里错了,谢谢
- 增 删 改 简单的程序包 出错
- 求PL SQL基础资料,就要语法方面的,能进行PL SQL编程
- oracle 9i tns:监听进程不能解析
- 在线等!!!11急! ORA-01400: cannot insert NULL into ("LIANG"."ORDER_DETAIL"."ORDER_ID")
- 这样一个数据表如何入手编写啊?望不吝赐教
- 我在winxp pro下面安装的oracle10g
- 如何利用ORACLE的错误查找命令行oerr 获取1403的代表内容求急
- 请问TNSping 服务名,怎么用?
- group by语句
- 兄弟们,看看这个存储过程都有些什么语法错误,谢谢.
- 刚学oracle,请教一个问题!
grant create table to 用户名若是没有创建存储过程的权限的话:grant create procedure to 用户名
2 as
3 s_q varchar2(100);
4 begin
5 s_q := 'create table cc(id number)';
6 execute immediate s_q;
7 end;
8 /过程已创建。SQL> exec cccccc;
BEGIN cccccc; END;*
ERROR 位于第 1 行:
ORA-01031: 权限不足
ORA-06512: 在"SYSTEM.CCCCCC", line 6
ORA-06512: 在line 1
SQL> conn /as sysdba
已连接。
SQL> grant create table to system;授权成功。SQL> conn system/love2008
已连接。
SQL> exec cccccc;PL/SQL 过程已成功完成。
sys@HASL>alter user system identified by manager account unlock;用户已更改。sys@HASL>conn system/manager@haslxdb
已连接。
sys@HASL>create or replace procedure aaa
2 is
3 ssql varchar2(1000);
4 begin
5 ssql:='create table asdf(id char(10))';
6 execute immediate ssql;
7 end aaa;
8 /过程已创建。sys@HASL>exec aaa;PL/SQL 过程已成功完成。sys@HASL>show user
USER 为"SYSTEM"
sys@HASL>select *from asdf;未选定行
已连接。
sys@HASL>show user
USER 为"TT"
sys@HASL>create or replace procedure aaa
2 is
3 ssql varchar2(1000);
4 begin
5 ssql:='create table asdf(id char(10))';
6 execute immediate ssql;
7 end aaa;
8 /过程已创建。sys@HASL>exec aaa;PL/SQL 过程已成功完成。sys@HASL>select *from asdf
2 /未选定行sys@HASL>create view tt1 as select *from asdf;
create view tt1 as select *from asdf
*
ERROR 位于第 1 行:
ORA-01031: 权限不足
新建了一个用户TT,只需要有create table的权限就可以执行阿sys@HASL>