请看源码:--创建一个test用户
CREATE USER test IDENTIFIED BY test;--给test用户授权
GRANT CREATE SESSION,CREATE TABLE TO test;--用test登陆数据库
CONN TEST/TEST;--创建个test表
CREATE TABLE test
(ID NUMEBE(2),
 NAME VARCHAR2(10))--结果出错
ORA-01950: 对表空间 'USERS' 无权限
请问这个再应该给个什么权限? 书上给了方法是先删除test用户,然后再创建,看代码:--删除用户
DROP USER test;--重新创建并给2M的表空间
CREATE USER test IDENTIFIED BY test DEFAULT TABLESPACE USERS QUOTA 2M ON USERS;
只有给了表空间大小后,才能创建新表,但是我觉得这样好麻烦,删了重建。有没有其他办法?高手们请帮忙解答下。

解决方案 »

  1.   

    不用删除test用户
    你用dba登录 执行:grant unlimited tablespace to test;
    就OK的
      

  2.   

    alter user test quota unlimited|xxm on users;
      

  3.   

    作为一个dba,应牢记权限最小化原则。
      

  4.   

    系统默认分配就是这样子的:DEFAULT TABLESPACE USERS
    就是你上面写的呀 分配2m的空间
      

  5.   


    谢谢,刚看到了,现在弄明白了。呵呵。也感谢 Adebayor。给你们分咯。。