修改用户,数据库,表的默认表空间
创建用户时,如果不指定默认表空间,那么就会根据数据库系统默认参数来指定默认表空间,一般是users这个表空间,可以通过查看视图database_properties看到相关的信息。即:
select a.property_name, a.property_value from database_properties a where a.property_name like ‘%DEFAULT%’;
修改数据库系统默认的表空间
用下面的命令可以修改数据库系统默认的表空间,就是修改参数DEFAULT_PERMANENT_TABLESPACE对应的值:
alter database default tablespace ee;
要改默认临时表空间,可以修改参数DEFAULT_TEMP_TABLESPACE对应的值。修改的语句如下:
alter database default temporary tablespace tempa;
修改表的表空间
ALTER TABLE SCOTT.T MOVE TABLESPACE EE;
修改用户的表空间
ALTER USER SCOTTDEFAULT TABLESPACE EE(表空间名);
ALTER USER SCOTTTEMPORARY TABLESPACE TEST_TMP (临时表空间名);
注意:
1.即使用system 用户修改表的表空间
ALTER TABLE SCOTT.T MOVE TABLESPACE EE;
也会提示 ORA-01950 对表空间没有权限
2.scott 用户新建的表,属于ee表空间,但是无法插入,提示 ORA-01950 对表空间没有权限
解决方案:alter user scott quota unlimited on ee