今天碰见sys登陆赋创建视图权限,很意外的提示:"ORA-00990:权限缺失或无效"
后来查了一下,自己记错了
写成CREATE ALL VIEW了,教训啊,以后记东西一定要记清楚了
查了一下user_sys_privs视图,里面就不支持没有CREATE ALL VIEW这个权限,只有CREATE ANY VIEW
其中user_sys_privs是一张权限视图,这张视图由system_privilege_map表中取得
取得sql
Oracle权限分类:系统权限和对象权限
这个"ORA-00990"报的权限缺失是系统权限缺失,不是对象权限缺失,赋予权限的时候如果报这个错的话,查一下user_sys_privs视图,看看登陆的用户有没有这个权限
后来查了一下,自己记错了
grant CREATE ANY VIEW to scott;
写成CREATE ALL VIEW了,教训啊,以后记东西一定要记清楚了
查了一下user_sys_privs视图,里面就不支持没有CREATE ALL VIEW这个权限,只有CREATE ANY VIEW
其中user_sys_privs是一张权限视图,这张视图由system_privilege_map表中取得
取得sql
create or replace view user_sys_privs
(username, privilege, admin_option)
as
select decode(sa.grantee#,1,'PUBLIC',su.name),spm.name,
decode(min(option$),1,'YES','NO')
from sys.system_privilege_map spm, sys.sysauth$ sa, sys.user$ su
where ((sa.grantee#=userenv('SCHEMAID') and su.user#=sa.grantee#)
or sa.grantee#=1)
and sa.privilege#=spm.privilege
group by decode(sa.grantee#,1,'PUBLIC',su.name),spm.name;
comment on column USER_SYS_PRIVS.USERNAME is 'User Name or PUBLIC';
comment on column USER_SYS_PRIVS.PRIVILEGE is 'System privilege';
comment on column USER_SYS_PRIVS.ADMIN_OPTION is 'Grant was with the ADMIN option';
Oracle权限分类:系统权限和对象权限
这个"ORA-00990"报的权限缺失是系统权限缺失,不是对象权限缺失,赋予权限的时候如果报这个错的话,查一下user_sys_privs视图,看看登陆的用户有没有这个权限