ALTER TABLE Å×À̺í¸í DROP UNUSED COLUMNS; ¹®

ÀÌ´Â unused½ÃŲ Ä÷³À» µð½ºÅ©¿¡¼­ ¿ÏÀüÈ÷ »èÁ¦ÇÏ´Â ±â´ÉÀÌ´Ù.

SET UNUSED ¿É¼ÇÀ» »ç¿ëÇÏ´Â °æ¿ì

set unused ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÁöÁ¤ÇÑ Ä÷³À» »ç¿ëÇÏÁö ¾Ê°Ú´Ù°í ÇÏ´Â °ÍÀÌ´Ù.

¹æ¹ý1

   ALTER TABLE Å×À̺í¸í DROP COLUMN Ä÷³¸í CASCADE CONSTRAINTS; 
¹æ¹ý2

   ALTER TABLE Å×À̺í¸í DROP UNUSED COLUMNS; 

• ½ÇÁ¦·Î Ä÷³ÀÌ »èÁ¦µÇ´Â °ÍÀÌ ¾Æ´Ï±â ¶§¹®¿¡ ÇÒ´çµÈ µð½ºÅ© °ø°£Àº ÇØÁ¦µÇÁö ¾Ê´Â´Ù.
• ¿©·¯ °³ÀÇ Ä÷³À» µ¿½Ã¿¡ UNUSED·Î ¼³Á¤ÇÒ ¼ö ÀÖ´Ù.
• UNUSEDµÈ Ä÷³Àº µ¥ÀÌÅ͸¦ Æ÷ÇÔÇϰí ÀÖ´õ¶óµµ »èÁ¦µÈ °Íó·³ °£ÁÖÇÑ´Ù.
• UNUSEDµÈ Ä÷³Àº accessÇÒ ¼ö ¾ø´Ù.
• UNUSEDµÈ Ä÷³°ú µ¿ÀÏÇÑ À̸§ÀÇ Ä÷³À» Å×ÀÌºí¿¡ Ãß°¡ÇÒ ¼ö ÀÖ´Ù.
• UNUSEDµÈ Ä÷³À» µð½ºÅ© ÇÒ´ç¿¡¼­ ¿ÏÀüÈ÷ ȸ¼öÇÏ·Á¸é, DROP UNUSED COLUMNS¸í·ÉÀ» »ç¿ëÇØ¾ß ÇÑ´Ù.
• UNUSEDµÈ Ä÷³Àº desc³ª select ¹®À¸·Î È®ÀÎÇÒ ¼ö ¾ø´Ù.
• UNUSEDµÈ Ä÷³Àº È®ÀÎÇÒ ¼ö ¾øÀ¸¸ç, ´ÜÁö data dictionaryÀÎ dba_unused_col_tabs¸¦ ÅëÇÏ¿© ´©±¸ ¼ÒÀ¯ÀÇ ¾î¶² Å×ÀÌºí¿¡ ¸î°³ÀÇ unused Ä÷³ÀÌ ÀÖ´ÂÁö¸¸ È®ÀÎÀÌ °¡´ÉÇÏ´Ù.

¡¼¿¹Á¦¡½
SQL> desc test;
 À̸§                                      ³Î?      À¯Çü
 ----------------------------------------- -------- ----------------------------
 DEPTNO                                             NUMBER(2)
 DNAME                                              VARCHAR2(14)
 LOC                                                CHAR(13)
 MARRIAGE                                           CHAR(8)
 
SQL> alter table test 
  2  SET UNUSED COLUMN marriage;  ¢Ð marriage Ä÷³À» unused½ÃÅ´
 
Å×À̺íÀÌ º¯°æµÇ¾ú½À´Ï´Ù.
 
SQL> alter table test
  2  SET UNUSED (loc);  ¢Ð loc Ä÷³À» unused ½ÃÅ´
 
Å×À̺íÀÌ º¯°æµÇ¾ú½À´Ï´Ù.

SQL> desc test;
 À̸§                                      ³Î?      À¯Çü
 ----------------------------------------- -------- ----------------------------
 DEPTNO                                             NUMBER(2)
 DNAME                                              VARCHAR2(14)
 
SQL> conn system/manager
Connected.
 
¼¼¼ÇÀÌ º¯°æµÇ¾ú½À´Ï´Ù.
 
SQL> select * from dba_unused_col_tabs;  ¢Ð Å×À̺íÀ̸§°ú unused¼ö¸¸ È®ÀÎÀÌ °¡´ÉÇÔ
 
OWNER                          TABLE_NAME      COUNT
------------------------------ ---------- ----------
SCOTT                          TEST                2
 
SQL> conn scott/tiger
Connected.
 
¼¼¼ÇÀÌ º¯°æµÇ¾ú½À´Ï´Ù.
 
SQL> desc test;  ¢Ð desc·Î unusedµÈ Ä÷³ÀÌ Ç¥½ÃµÇÁö ¾ÊÀ½
 À̸§                                      ³Î?      À¯Çü
 ----------------------------------------- -------- ----------------------------
 DEPTNO                                             NUMBER(2)
 DNAME                                              VARCHAR2(14)
 
SQL> ALTER TABLE test
  2  DROP UNUSED COLUMNS;  ¢Ð unused µÈ Ä÷³À» ¿ÏÀüÈ÷ »èÁ¦½ÃÅ´
 
Å×À̺íÀÌ º¯°æµÇ¾ú½À´Ï´Ù.
 
SQL> conn system/manager
Connected.
 
¼¼¼ÇÀÌ º¯°æµÇ¾ú½À´Ï´Ù.
 
SQL> select * from dba_unused_col_tabs;  ¢Ð unusedµÈ Ä÷³ÀÌ ¾øÀ½
 
¼±ÅÃµÈ ·¹Äڵ尡 ¾ø½À´Ï´Ù.
 
SQL> 

¡¼¿¹Á¦¡½ SQL> create table test_unused( id number(6), 2 name varchar2(10)); Å×À̺íÀÌ »ý¼ºµÇ¾ú½À´Ï´Ù. SQL> insert into test_unused values(11111,'Corea'); 1 °³ÀÇ ÇàÀÌ ¸¸µé¾îÁ³½À´Ï´Ù. SQL> select * from test_unused; ID NAME ---------- ---------- 11111 Corea SQL> alter table test_unused set unused column id; Å×À̺íÀÌ º¯°æµÇ¾ú½À´Ï´Ù. SQL> select * from test_unused; NAME ---------- Corea SQL> desc test_unused; À̸§ ³Î? À¯Çü ----------------------------------------- -------- ---------------------------- NAME VARCHAR2(10) SQL> select * from user_unused_col_tabs; TABLE_NAME COUNT ------------------------------ ---------- TEST_UNUSED 1 SQL> alter table test_unused drop unused columns; Å×À̺íÀÌ º¯°æµÇ¾ú½À´Ï´Ù. SQL> select * from user_unused_col_tabs; ¼±ÅÃµÈ ·¹Äڵ尡 ¾ø½À´Ï´Ù. SQL>