database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 1016 게시물 읽기
No. 1016
Re: unused 를 이용하여 사용하지 않는 테이블을 만들었는데 복구방법은요?
작성자
김규태
작성일
2000-06-19 21:30
조회수
19,210

> 안녕하세요. 오라클 초보입니다.

> 제가 unused 키워드를 이용하여 사용하지 않는 칼럼을 만들었는데...

>

> alter table test set unused column num;

>

> 이런식으로요... num 칼럼을 안쓰는 터라 그냥 안보이게 해바렸죠...

> 그런데 다시 쓸일이 생겨서 복구를 할려는데.. 이게 안되네요...

>

> unused 대신에 used 키워드를 쓰면 될꺼 같은데 안되네요...

> 이거 복구하는 방법 좀 갈켜주세용...^^;;;

>

> 고수님들 부탁합니다.

 

 

 

저도 8i는 현재 테스트용으로 사용중이라 자세히는 알지 못합니다.

매뉴얼을 참조하여 잠깐 테스트한 바에 의하면 다음과 같은 결론이 나오는군요.

unused 는 칼럼을 drop 하는 옵션 중의 하나입니다.

그래서 unused를 사용하면 실제로 디스크상의 스페이스는 재사용할 수 없고

데이타도 있지만 drop 된 것과 같다고 합니다.

그리고 USER_UNUSED_COL_TABS, DBA_UNUSED_COL_TABS, ALL_UNUSED_COL_TABS 를

통해서 삭제된 칼럼을 확인할 수 있다고 합니다.

그리고 비록 데이타 있다고 하더라도 확인할 수 없고,

같은 이름의 칼럼은 새롭게 만들수 있다고 하네요.

그런데 새로 만드니까 당연히 데이타는 하나도 없겠지요?

아래 매뉴얼 일부와 테스트 결과입니다.

 

 

SET UNUSED

--------------------------

marks one or more columns as unused. Specifying this clause does

not actually remove the target columns from each row in the table

(that is, it does not restore the disk space used by these columns).

Therefore, the response time is faster than it would be if you execute

the DROP clause.

You can view all tables with columns marked as unused in the data

dictionary views USER_UNUSED_COL_TABS, DBA_UNUSED_COL_

TABS, and ALL_UNUSED_COL_TABS. For information on these

views, see Oracle8i Reference.

Unused columns are treated as if they were dropped, even though

their column data remains in the table’s rows. After a column has

been marked as unused, you have no access to that column. A

"SELECT *" query will not retrieve data from unused columns. In

addition, the names and types of columns marked unused will not be

displayed during a DESCRIBE, and you can add to the table a new

column with the same name as an unused column.

 

 

 

SQL> create table t1 as select * from emp ;

 

Table created.

 

SQL> desc t1

Name Null? Type

----------------------------------------- -------- ----------------

EMPNO NOT NULL NUMBER(4)

ENAME VARCHAR2(10)

JOB VARCHAR2(9)

MGR NUMBER(4)

HIREDATE DATE

SAL NUMBER(7,2)

COMM NUMBER(7,2)

DEPTNO NUMBER(2)

 

SQL> select EMPNO, SAL from t1;

 

EMPNO SAL

---------- ----------

7369 800

7499 1600

7521 1250

7566 2975

7654 1250

7698 2850

7782 2450

7788 3000

7839 5000

7844 1500

7876 1100

 

EMPNO SAL

---------- ----------

7900 950

7902 3000

7934 1300

 

SQL> alter table t1 set unused ( SAL ) ;

 

Table altered.

 

SQL> desc t1

Name Null? Type

----------------------------------------- -------- ---------------------

EMPNO NOT NULL NUMBER(4)

ENAME VARCHAR2(10)

JOB VARCHAR2(9)

MGR NUMBER(4)

HIREDATE DATE

COMM NUMBER(7,2)

DEPTNO NUMBER(2)

 

 

SQL> alter table t1 add ( SAL NUMBER(7,2) ) ;

 

Table altered.

 

SQL> desc t1

Name Null? Type

----------------------------------------- -------- ------------------

EMPNO NOT NULL NUMBER(4)

ENAME VARCHAR2(10)

JOB VARCHAR2(9)

MGR NUMBER(4)

HIREDATE DATE

COMM NUMBER(7,2)

DEPTNO NUMBER(2)

SAL NUMBER(7,2)

 

SQL> select EMPNO, SAL from t1 ;

 

EMPNO SAL

---------- ----------

7369

7499

7521

7566

7654

7698

7782

7788

7839

7844

7876

 

EMPNO SAL

---------- ----------

7900

7902

7934

[Top]
No.
제목
작성자
작성일
조회
1022Oracle 8i에 BOOLEAN형이 없습니까?
전진우
2000-06-20
16652
1019linux에서 oracle설치.........가르쳐줘요..꺼이꺼이...ㅠ ㅠ
하혜종
2000-06-20
16146
1020┕>Re: linux에서 oracle설치.........가르쳐줘요..꺼이꺼이...ㅠ ㅠ
전진우
2000-06-20 16:20:36
17580
1015커널성정에 대해 자세히 알고 싶습니다.
김병국
2000-06-19
17063
1017┕>Re: 커널성정에 대해 자세히 알고 싶습니다.
문태준
2000-06-20 00:39:40
17320
1018 ┕>[참고] 오라클 816 영문 설치 가이드에 자세히 나와있네요
문태준
2000-06-20 11:28:59
16174
1021┕>Re: 커널성정에 대해 자세히 알고 싶습니다.
전진우
2000-06-20 16:24:22
16065
1014unused 를 이용하여 사용하지 않는 테이블을 만들었는데 복구방법은요?
김병국
2000-06-19
16204
1016┕>Re: unused 를 이용하여 사용하지 않는 테이블을 만들었는데 복구방법은요?
김규태
2000-06-19 21:30:14
19210
1009[급해요..]php에서..
정태연
2000-06-19
16901
1010┕>Re: [급해요..]php에서..
정재익
2000-06-19 19:11:10
17101
1007oracle 8.1.6 가지고 계신분, 저도 좀 줘요......
dyst
2000-06-19
18556
1008┕>Re: oracle 8.1.6 가지고 계신분, 저도 좀 줘요......
인포랑
2000-06-19 15:55:43
18406
1024 ┕>Re: Re: oracle 8.1.6 가지고 계신분, 저도 좀 줘요......
2000-06-20 17:33:32
19629
1006인포랑의 감사말 한마디..
인포랑
2000-06-19
17886
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.022초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다