前段时间,在oracle中新建了一个用户,给了connect和resource权限。但是开发人员突然说不能创建view,觉得不打应该啊,记得connect应该包括create view权限。通过检查,发现我的记忆是错误的。
数据库版本
- SQL> select version from v$instance;
-
-
VERSION
-
-----------------
-
11.1.0.6.0
用新用户登录,查具体有哪些权限
- SQL> conn newuser/pass
-
SQL> select * from session_privs;
-
PRIVILEGE
-
--------------------------------------------------------------------------------
-
CREATE SESSION
-
UNLIMITED TABLESPACE
-
CREATE TABLE
-
CREATE CLUSTER
-
CREATE SEQUENCE
-
CREATE PROCEDURE
-
CREATE TRIGGER
-
CREATE TYPE
-
CREATE OPERATOR
-
CREATE INDEXTYPE
从上面的结果可以看到,还真没有create view权限。
那么connect角色到底有哪些权限呢?
- SQL> select * from dba_sys_privs where GRANTEE='CONNECT';
-
GRANTEE PRIVILEGE ADM
-
------------------------------ ---------------------------------------- ---
-
CONNECT CREATE SESSION NO
结果反馈,connect角色只有一个create session权限!看来以前的认识是错误的!
继续查,看看resource有哪些权限
- SQL> select * from dba_sys_privs where GRANTEE='RESOURCE';
-
-
GRANTEE PRIVILEGE ADM
-
------------------------------ ---------------------------------------- ---
-
RESOURCE CREATE TRIGGER NO
-
RESOURCE CREATE SEQUENCE NO
-
RESOURCE CREATE TYPE NO
-
RESOURCE CREATE PROCEDURE NO
-
RESOURCE CREATE CLUSTER NO
-
RESOURCE CREATE OPERATOR NO
-
RESOURCE CREATE INDEXTYPE NO
-
RESOURCE CREATE TABLE NO
-----------
最后,给新建用户赋予create view权限,解决问题。
阅读(11308) | 评论(0) | 转发(0) |