系统权限不足:Oracle数据库有一系列系统级别的权限,如CREATE SESSION、CREATE TABLE、CREATE VIEW等。如果用户没有被授予足够的系统权限,他们将无法执行相应的操作。对象权限不足:除了系统权限外,用户还需要对特定对象的访问权限,如表、视图、存储过程等。如果用户没有这些对象的正确访问权限,他们同样会遇到ORA-01...
1)在同一个schema下,有查询权限,就可以创建视图。 2)在不同schema下,即使有了查询权限,创建视图,还是会提示ORA-01031。 文章中介绍需要sys账户将数据字典的访问权限赋予star用户,但这里还要注意的是V$SESSION是一个public的同义词,根据前几篇博客介绍的方法,可以看到它封装的是x$ksuse这个表,好像没看到过将这种...
新建用户jack,授予connect、resource、unlimited tablespace权限,发现不能创建视图 SQL> create or replaceview ts 2 as 3 select * from employees order by id; create or replace view ts * ERROR at line 1: ORA-01031: insufficient privileges 记得connect是包含create view权限的,于是查询dba_sys_privs数据字...
connb/bccreate or replace view asselect*fromA.bm; ORA-01031: 权限不足。 此时应该做如下权限授予: 1.创建视图权限 grantcreateviewtoB; 2.授予查询权限 grantselectonA.bmtoB;orgrantselectanytabletoB; 3.授予权限 grantselectanydictionarytoB; ---注意:必须要有后面两个,否则还是无法创建的!
(注意此处包含了 select any dictonary权限,下文会重点用到) 按理说我建立视图所需的权限都有了啊,为什么还会报权限不足呢?我用该用户下的其他表建view都没有问题,仔细对比一下发现v$mystat 等都是同义词。这是因为用同义词建视图时,角色是不会被继承的,所以我们就报了权限不足。
建立视图报 ORA-01031: insufficient privileges 建立所需要的实验环境的脚本: create user lc0019999 identified by aaaaaa; create user lc0029999 identified by aaaaaa; grant dba to lc0019999; grant dba to lc0029999; create table lc0029999.t1 (c1 varchar(2)); ...
1、登入到system用户创建视图,需要在emp前面加上schema(模式)。例如:scott.emp 2、给scott用户授予create any view和drop any view权限就可以在scott用户下创建视图了。
看你当前用户是否有权限创建视图 要不用sys登录后 grant create view to 当前用户 再创建视图.
ORA-01031: 权限不足 -- 3.查看当前session是否有创建视图的权限,结果表明确实有创建视图的权限(CREATE ANY VIEW) SQL> SELECT * FROM SESSION_PRIVS 2 WHERE PRIVILEGE IN ('CREATE ANY VIEW', 'SELECT ANY TABLE'); PRIVILEGE --- SELECT ANY TABLE CREATE ANY VIEW -- 4. 基于其他表可以...