关于ORA-01720: 不存在 '+++' 的授权选项的错误解决方法
2016-08-16 17:18
846 查看
在用A用户创建视图的时候,引用了sys用户下的一张视图,创建时报错 ORA-01720: 不存在 'SYS.DBA_ARGUMENTS' 的授权选项。然后我登录sys用户,grant select on DBA_ARGUMENTS to A,但还是报ORA-01720的错误,经过查询,解决方法如下:
在grant select on DBA_ARGUMENTS to A 后面加上 with grant option,这样就解决了问题。
在Oracle数据库系统中,用户的权限有两种:system privilege和object privilege
System privilege enables users to perform. particular actions in the database.
Object privilege enables users to access and manipulate a specific object
System privilege比如有:create session、create table、create synonym、alter session等用于在数据库中执行特定的操作。
Object privilege比如给某些对象(table,index,function..)授予执行某些特定的操作(select,update,delete)。
对对象权限和系统权限有个大概了解后,再来看看with admin option和with grant option是干什么的。
如果执行GRANT命令为某个SCHEMA赋对象权限时带上了WITH GRANT OPTION,那么该SCHEMA就可以将该对象权限授予他人,否则不行。
如果执行GRANT命令为某个SCHEMA赋系统权限时带上了WITH ADMIN OPTION, 那么该SCHEMA就可以将该系统权限授予他人,否则不行。
需要注意点就是,WITH GRANT OPTION是在赋对象权限时使用,WITH ADMIN OPTION是在赋系统权限时使用。
在grant select on DBA_ARGUMENTS to A 后面加上 with grant option,这样就解决了问题。
在Oracle数据库系统中,用户的权限有两种:system privilege和object privilege
System privilege enables users to perform. particular actions in the database.
Object privilege enables users to access and manipulate a specific object
System privilege比如有:create session、create table、create synonym、alter session等用于在数据库中执行特定的操作。
Object privilege比如给某些对象(table,index,function..)授予执行某些特定的操作(select,update,delete)。
对对象权限和系统权限有个大概了解后,再来看看with admin option和with grant option是干什么的。
如果执行GRANT命令为某个SCHEMA赋对象权限时带上了WITH GRANT OPTION,那么该SCHEMA就可以将该对象权限授予他人,否则不行。
如果执行GRANT命令为某个SCHEMA赋系统权限时带上了WITH ADMIN OPTION, 那么该SCHEMA就可以将该系统权限授予他人,否则不行。
需要注意点就是,WITH GRANT OPTION是在赋对象权限时使用,WITH ADMIN OPTION是在赋系统权限时使用。
相关文章推荐
- 关于EXP-00056: 遇到 ORACLE 错误 1455 ORA-01455: 转换列溢出整数数据类型 EXP-00000: 导出终止失败 的问题解决方法整理
- ORA-00911错误及解决方法 剖析以及 sql操作提示表或视图不存在
- 关于"ORA-00942 表或视图不存在" 问题的解决方法
- 关于在Windows中安装Oracle碰到ORA-12638错误的解决方法
- ORA-01720: grant option does not exist for 'xxx.xxxx' (ORA-01720 ‘XXX’ 不存在授权选项)
- 关于oracle连接ORA-12505错误的直观解决方法
- 关于ORA-00257: archiver error. Connect internal only, until freed 错误的解决方法
- 关于C++头文件#include<iostream.h>debug时提示文件目录不存在错误解决方法?
- 关于oracle 安装结束后的ORA-12560: TNS: 协议适配器错误的解决方法
- 关于在Windows中安装Oracle碰到ORA-12638错误的解决方法
- 关于oracle的ORA-00607和ORA-00600错误解决方法
- ORACLE-016:ora-01720 授权选项对于'xxxx'不存在
- 关于oracle报ORA-01033错误的解决方法
- ORACLE-016:ora-01720 授权选项对于'xxxx'不存在
- ORACLE-016:ora-01720 授权选项对于'xxxx'不存在
- 关于在使用rowid和rownum时遇到ORA-01446错误的原因即解决方法。
- 关于oracle数据库启动报ORA-01122,ORA-01110,ORA-01203错误的解决方法
- ORA-01720:不存在“****.****"授权选项
- 关于oracle数据库启动报ORA-01122,ORA-01110,ORA-01203错误的解决方法
- ORA-01720: grant option does not exist for 'xxx.xxxx' (ORA-01720 ‘XXX’ 不存在授权选项)