일단..친절한 답변 무지 감사합니다..^^;;
테스트 하다가 이상한 점을 발견했는데요..
관리자가 아닌 사용자가 테이블을 생성시키면 디폴트로 'USERS'라는 tablespace_name을 갖는 건가요??
제가 알고자 했던것은 그 emp라는 테이블을 썼을때 남은 용량이거든요..
제가 올려놓았던..명령어로 하면 'USERS'라는 전체 tablespace_name의 총용량과 남은 상태를 알수 있지만..'emp'라는 테이블의 남은 용랑은 알수가 없는것 같아요..이걸 알수 있는 방법을 아시면 답변부탁드립니다...
>>전명균 님께서 쓰시길<<
:: emp란 테이블을 생성시키면 default tablespace에 만들어집니다.
:: 대개 users tabalespace에 들어갑니다.
:: 보통 오라클을 인스톨 하면 (SYSTEM,RBS,TEMP,TOOLS,USERS) tablespace가
:: 만들어 집니다.
::
:: 1. 즉 emp란 테이블을 만들 default tablespce를 줄수가 있습니다.
:: SQL> create table emp
:: (
:: EMPNO NOT NULL NUMBER(4)
:: ENAME VARCHAR2(10)
:: JOB VARCHAR2(9)
:: 등......
:: )
:: tablespace USERS
:: storage ( initial 20M next 20M pctincrease 0 );
::
:: 2. 그리고 emp 테이블의 크기와 tablespace를 알고 싶으면
:: SQL> select segment_name, tablespace_name, bytes
:: 2 from user_segments
:: 3 where segment_name = 'EMP';
:: SEGMENT_NAME TABLESPACE_NAME BYTES
:: --------------------------------------------------------
:: EMP USERS 10240
:: 당연히 scott/tiger로 접속
::
:: 3. 그리고 아래 참고한것은
:: 'taejun'이라는 테이블스페이스명을 가진 테이블스페이스가
:: 어디에 저장되어있느지, 총크기, 남은 용량을 보는것 같네요.
:: 그리면 정재님은
:: SQL>select a.tablespace_name as "tablespace",
:: b.file_name as "file",
:: b.bytes as "total size",
:: c.bytes as "left"
:: from user_tablespaces a, user_data_files b, user_free_space c
:: where a.tablespace_name = b.tablespace_name
:: and a.tablespace_name = c.tablespace_name
:: and a.tablespace_name = 'USERS'
:: 당연히 위의 문장은 system/manager으로 접속
:: 조금이나마 도움이 되었으면 합니다.
:: 좋은 하루되세요....
::
|