답변:
새 사용자를 작성할 때 선택적으로 해당 사용자가 작성한 오브젝트의 기본 테이블 스페이스 및 기본 임시 테이블 스페이스를 지정할 수 있습니다. 예를 들면 다음과 같습니다.
CREATE USER phil IDENTIFIED BY l33t
DEFAULT TABLESPACE philtablespace
TEMPORARY TABLESPACE philtemp;
사용자를 작성할 때 절을 생략하면 사용자는 데이터베이스 기본값을 상속합니다. 다음과 같이 쿼리 할 수 있습니다.
SQL> select *
2 from database_properties
3 where property_name like 'DEFAULT%TABLESPACE';
PROPERTY_NAME PROPERTY_VALUE DESCRIPTION
------------------------------ -------------------- ----------------------------------------
DEFAULT_TEMP_TABLESPACE TEMP Name of default temporary tablespace
DEFAULT_PERMANENT_TABLESPACE USERS Name of default permanent tablespace
SQL>
... 그리고 다음과 같이 수정되었습니다.
alter database default tablespace PHILTS;
alter database default temporary tablespace PHILTEMP;
주어진 사용자에 대한 기본값을 쿼리하려면 다음 쿼리를 사용하십시오.
SQL> select USERNAME, DEFAULT_TABLESPACE, TEMPORARY_TABLESPACE
2 from DBA_USERS
3 where USERNAME='PHIL';
USERNAME DEFAULT_TABLESPACE TEMPORARY_TABLESPACE
------------------------------ ------------------------------ ------------------------------
PHIL USERS TEMP
SQL>
SELECT DEFAULT_TABLESPACE FROM DBA_USERS
각 사용자의 기본 테이블 스페이스를 알고 있습니다.
ALTER DATABASE DEFAULT TABLESPACE othertablespace;
기본 테이블 스페이스를 변경합니다. 일반적으로 일부 테이블 스페이스가있는 경우 관리자는 다음과 같은 새 사용자를 작성할 때 기본 테이블 스페이스를 설정해야합니다.CREATE USER myuser IDENTIFIED BY mypass DEFAULT TABLESPACE onetablespace