ORA-01950:对表空间'USERS'无权限
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ORA-01950:对表空间'USERS'无权限,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3134字,纯文字阅读大概需要5分钟。
内容图文
![ORA-01950:对表空间](/upload/InfoBanner/zyjiaocheng/549/6fc0dc9c6f1e4bd187bbfc95dc2c07b1.jpg)
创建新的用户时,要指定default tablespace,否则它会把system表空间当成自己的缺省表空间。这样做是不提倡的。估计原来创建某
创建新的用户时,要指定default tablespace,否则它会把system表空间当成自己的缺省表空间。这样做是不提倡的。估计原来创建某个用户的时候没有指定缺省表空间,而现在它使用系统表空间的权限被DBA给收回了。
先用的简单的办法试试,一般缺省的Oracle安装都是有USERS表空间的。
比如你要在用户(或SCHEMA)usera中建表,那么你用SYSTEM登录ORACLE后,执行如下SQL
ALTER USER usera QUOTA UNLIMITED ON USERS;
如果没有USERS表空间,则会报错,,你可以找一个其他的表空间,从v$tablespace可以看到所有的表空间。
下面情况sany用户开始创建的时候没有制定default tablespace ********
SQL> connect sany/as646333
已连接。
SQL> select * from user_sys_privs
2 ;
USERNAME PRIVILEGE ADM
------------------------------ ---------------------------------------- ---
SANY CREATE SESSION NO
SANY EXECUTE ANY PROCEDURE NO
SANY CREATE USER NO
SANY CREATE TABLE NO
SQL> create table bjwh(user_id number(5),user_name varchar2(20),phone varchar2(12),email varchar2(20
));
create table bjwh(user_id number(5),user_name varchar2(20),phone varchar2(12),email varchar2(20))
*
第 1 行出现错误:
ORA-01950: 对表空间 'USERS' 无权限
SQL> connect system/oracle
已连接。
SQL> alter user sany quota unlimited on users;
用户已更改。
SQL> connect sany/as646333
已连接。
SQL> create table bjwh(user_id number(5),user_name varchar2(20),phone varchar2(12),email varchar2(2
0));
表已创建。
SQL> disconnect
从 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 断开
SQL> desc bjwh
SP2-0640: 未连接
SP2-0641: "DESCRIBE" 需要连接至服务器
SQL> connect sany/as646333
已连接。
SQL> desc bjwh
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
USER_ID NUMBER(5)
USER_NAME VARCHAR2(20)
PHONE VARCHAR2(12)
EMAIL VARCHAR2(20)
问题解决。
create table test1 (
id varchar(20) default '0' not null,
name varchar(20) default '0' not null
)
alter user UserName quota 200M on TableSpaceName
或者:grant unlimited tablespace to username;或grant unlimited tablespace,dba to username;
第 1 行出现错误:
ORA-01950: 对表空间 'USERS'
无权限
后来查一下才发现我创建用户的时候经常忘记quota。一般我们创建用户的时候,一般要用create user wangfan identified by wangfan default tablespace test. 但一定还要加上一句:quota Storage(unlimited, 8K, 10M etc.) on tablespace; 否则就会出现对表空间使用无权限的错误。quota的意思是该用户可以得到在这个tablespace上所得到的空间。后来我就以sysdba的身份登陆,alter user wangfan quota unlimited on test;然后再创建表就没有问题了。
内容总结
以上是互联网集市为您收集整理的ORA-01950:对表空间'USERS'无权限全部内容,希望文章能够帮你解决ORA-01950:对表空间'USERS'无权限所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。