日期:2014-05-16  浏览次数:20508 次

Oracle 授权 ORA-00990: 权限缺失或无效

创建一个用户:

create user xxx identified by yyy

?当密码里面有特殊字符时? windows平台下面应该用 "yyy"? 其它平台未测试

刚创建好的用户是没有任何权限的? 连登录数据库的权限都没有

这时,就要给用户授予权限:

ORACLE里面的权限有系统权限和对象权限两种

可以通过

select distinct p.privilege
  from user_sys_privs p
 order by p.privilege asc;
?

?

?来查询ORACLE里面的所有系统权限;

常用的系统权限有 :

????? ? ? ? ? ? ? ? CREATE SESSION???????????????????? 创建会话 登录数据库

?????? CREATE SEQUENCE???????????? ??????? 创建序列

?????? CREATE SYNONYM ???????????????????? 创建同名对象

?????? CREATE TABLE ?????????????????????? 在用户模式中创建表

?????? CREATE ANY TABLE ?????????????????? 在任何模式中创建表

?????? DROP ANY TABLE ???????????????????? 在任何模式中删除表

?????? CREATE PROCEDURE ?????????????????? 创建存储过程

?????? EXECUTE ANY PROCEDURE ????????????? 执行任何模式的存储过程

?????? CREATE USER ??????????????????????? 创建用户

?????? DROP USER ????????????????????????? 删除用户

?????? CREATE VIEW ??????????????????????? 创建视图

通过下面的SQL可以查询所有的对象权限:

select distinct t.privilege from user_tab_privs t;

?结果如下:

????????????? FLASHBACK
????????????? EXECUTE
????????????? ON COMMIT REFRESH
????????????? ALTER
????????????? DEQUEUE
????????????? UPDATE
?????