create index 的权限不足

welyngj 2004-01-31 01:07:16

SQL> select * from session_privs;

星期六 1月 31
clear

PRIVILEGE
----------------------------------------
CREATE SESSION
ALTER SESSION
CREATE TABLE
CREATE ANY INDEX
CREATE SYNONYM
CREATE VIEW
CREATE SEQUENCE
CREATE PROCEDURE
CREATE TRIGGER

SQL> create index ix_jobs_title on hr.jobs(upper(job_title));
create index ix_jobs_title on hr.jobs(upper(job_title))
*
ERROR 位于第 1 行:
ORA-01031: 权限不足

我已经有create index的权限了,
这是为什么?
...全文
364 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Fenng 2004-02-01
  • 打赏
  • 举报
回复
哦,我是ITPub论坛的版主之一.

客气.
welyngj 2004-01-31
  • 打赏
  • 举报
回复
TO:Fenng(风) ,你不是itpub论坛的斑竹吗?很荣幸得到你的解答。
谢谢,问题解决。
beckhambobo 2004-01-31
  • 打赏
  • 举报
回复
SQL> select * from session_privs;

PRIVILEGE
----------------------------------------
CREATE SESSION
ALTER SESSION
UNLIMITED TABLESPACE
CREATE TABLE
CREATE ANY TABLE
DROP ANY TABLE
CREATE CLUSTER
CREATE SEQUENCE
CREATE PROCEDURE
CREATE TRIGGER
CREATE TYPE
CREATE OPERATOR
CREATE INDEXTYPE

13 rows selected

SQL> select * from user_sys_privs;

USERNAME PRIVILEGE ADMIN_OPTION
------------------------------ ---------------------------------------- ------------
BOBO ALTER SESSION NO
BOBO CREATE SESSION NO
BOBO DROP ANY TABLE NO
BOBO CREATE ANY TABLE NO
BOBO UNLIMITED TABLESPACE NO

SQL> select * from user_role_privs;

USERNAME GRANTED_ROLE ADMIN_OPTION DEFAULT_ROLE OS_GRANTED
------------------------------ ------------------------------ ------------ ------------ ----------
BOBO RESOURCE NO YES NO


看到了吧,会话权限与系统权限、角色有差别,以user_role_privs,user_sys_privs作准
Fenng 2004-01-31
  • 打赏
  • 举报
回复
你要创建的是函数索引

给你的用户授权:query rewrite

如果是在别的模式上创建FBI,要global query rewrite 的权限


此外,你的数据库版本要支持,初始化参数还要设定正确.
welyngj 2004-01-31
  • 打赏
  • 举报
回复
SQL> select * from user_ts_quotas;

TABLESPACE_NAME BYTES MAX_BYTES BLOCKS MAX_BLOCKS
------------------------------ ---------- ---------- ---------- ----------
EXAMPLE 1638400 -1 200 -1

SQL> select default_tablespace from user_users;

DEFAULT_TABLESPACE
------------------------------
EXAMPLE

SQL> create index ix_jobs_title on jobs(upper(job_title)) tablespace example;
create index ix_jobs_title on jobs(upper(job_title)) tablespace example
*
ERROR 位于第 1 行:
ORA-01031: 权限不足
welyngj 2004-01-31
  • 打赏
  • 举报
回复
谢谢。我想再问一个问题:
怎样清除btitle,ttitle?
leecooper0918 2004-01-31
  • 打赏
  • 举报
回复
是quota的问题.

你的这个索引 ix_jobs_title 建在哪个表空间上? 当前用户
有没有对这个表空间访问的磁盘限额?

先: select * from user_ts_quotas

然后再: alter user ... quota xxx on tbsname


17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧