yeony._.
๐Ÿข์ฝฉ๋ถ€๐Ÿข
yeony._.
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (99)
    • ๐Ÿ’ปProgramming (91)
      • โ˜•๏ธJava (19)
      • ๐Ÿ’ฝOracle (21)
      • ๐Ÿ‘ฉ‍๐ŸŽจHTML&CSS (12)
      • ๐ŸŽจ ์‹ค์Šต (4)
      • ๐Ÿƒ‍โ™€๏ธJavaScript (25)
      • JSP (8)
      • ๐ŸƒSpring (0)
      • ๐Ÿฅงpython (0)
      • API (0)
      • ๐Ÿ˜ˆGit (1)
    • ๐ŸคซPrivate (0)
      • -- (0)
      • + (0)
      • S (0)
      • P (0)
      • B (0)
    • ๐Ÿ˜ŽProject (4)
      • ๐Ÿ—“๏ธwbs ํ”„๋กœ์ ํŠธ (3)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • HTML #CSS #HTML์ด๋ฏธ์ง€ #HTML์ด๋ฏธ์ง€์—๊ธ€์”จ #HTML์ด๋ฏธ์ง€์—์ด๋ฏธ์ง€

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
yeony._.

๐Ÿข์ฝฉ๋ถ€๐Ÿข

[ORACLE] ๋ฐ์ดํ„ฐ ์ •์˜์–ธ์–ด (DDL)
๐Ÿ’ปProgramming/๐Ÿ’ฝOracle

[ORACLE] ๋ฐ์ดํ„ฐ ์ •์˜์–ธ์–ด (DDL)

2022. 8. 9. 21:14

๋ฐ์ดํ„ฐ ์ •์˜ ์–ธ์–ด(Data Definition Language) ๐Ÿถ

0. DDL

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์กฐ, ๋ฐ์ดํ„ฐ ํ˜•์‹, ์ ‘๊ทผ ๋ฐฉ์‹ ๋“ฑ DB๋ฅผ ๊ตฌ์ถ•ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์–ธ์–ด

์ข…๋ฅ˜ : CREATE, ALTER, DROP, RENAME, TRUNCATE

 

 

๋ฐ์ดํ„ฐ ํƒ€์ž… 

ํŠน์ • ์ปฌ๋Ÿผ์„ ์ •์˜ํ•  ๋•Œ ์„ ์–ธํ•œ ๋ฐ์ดํ„ฐ ์œ ํ˜•์€ ๊ทธ ์ปฌ๋Ÿผ์ด ๋ฐ›์•„๋“ค์ผ ์ˆ˜ ์žˆ๋Š” ์ž๋ฃŒ์˜ ์œ ํ˜•์„ ์ •์˜ํ•จ 

 

- ๋ฌธ์žํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž… 

- ์ˆซ์žํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž… 

- ๋‚ ์งœํ˜• ๋ฐ์ดํ„ฐ ํƒ€์ž… 

 

- ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ํƒ€์ž… 

- LONG/RAW ๋ฐ์ดํ„ฐ ํƒ€์ž… 

- ROWID ๋ฐ์ดํ„ฐ ํƒ€์ž… 

VARCHAR2 : 4000

CLOB : ๋Œ€์šฉ๋Ÿ‰์˜ ํ…์ŠคํŠธ 

NUMBER: ์ตœ๋Œ€ ์œ ํšจ์ž๋ฆฌ 30

DATE : ํฌ๊ธฐ๋ฅผ ์“ฐ์ง€ ์•Š์•„๋„ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

 

1. CREATE

1. ํ…Œ์ด๋ธ” ์ƒ์„ฑ

CREATE TABLE ํ…Œ์ด๋ธ”๋ช…(
	์ปฌ๋Ÿผ๋ช…  ํƒ€์ž…[(ํฌ๊ธฐ)]  [์ œ์•ฝ์กฐ๊ฑด],
	์ปฌ๋Ÿผ๋ช…  ํƒ€์ž…[(ํฌ๊ธฐ)]  [์ œ์•ฝ์กฐ๊ฑด]
    [, CONSTARAINT ์ œ์•ฝ์กฐ๊ฑด๋ช… PRIMARY KEY(์ปฌ๋Ÿผ)]
 );

 

 

2. ํ…Œ์ด๋ธ” ๋ชฉ๋ก ํ™•์ธ 

SELECT * FROM tabs; -- ์˜ค๋ผํด์€ ๋Œ€๋ฌธ์ž๋กœ ์ €์žฅ์ด ๋จ

 

3. ์ปฌ๋Ÿผ ๋ฐ ์ปฌ๋Ÿผ์˜ ํƒ€์ž… ํ™•์ธ 

DESC test;
SELECT * FROM col;
SELECT * FROM col WHERE tname = 'TEST';
SELECT * FROM cols;
SELECT * FROM cols WHERE table_name = 'TEST';

 

4. ๊ฐ€์ƒ ์ปฌ๋Ÿผ(virtual column)
๋””์Šคํฌ์— ์ €์žฅ๋˜์ง€ ์•Š๋Š” ์ˆ˜์‹๋“ค์„ ์ €์žฅ 
SYSDATE ๋“ฑ ๋™์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ•จ์ˆ˜๋Š” ์‚ฌ์šฉโŒ
๊ฐ€์ƒ ์ปฌ๋Ÿผ์€ ๊ฐ’์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •โŒ

 

ํ˜•์‹

column [datatype] [GENERATED ALWAYS] AS (column_expression) 
	[VIRTUAL] [ inline_constraint [inline_constraint]... ]

 

์˜ˆ์‹œ

tot NUMBER(3) GENERATED ALWAYS AS(kor+eng+mat) VIRTUAL
    
ave NUMBER(3) GENERATED ALWAYS AS((kor+eng+mat)/3)VIRTUAL

 


5. subquery๋ฅผ ์ด์šฉํ•œ ํ…Œ์ด๋ธ” ์ƒ์„ฑ 
์กด์žฌํ•˜๋Š” ํ…Œ์ด๋ธ”์„ ์ด์šฉํ•˜์—ฌ ํ…Œ์ด๋ธ” ์ž‘์„ฑํ•˜์—ฌ  ํ…Œ์ด๋ธ” ๊ตฌ์กฐ ๋ฐ ๊ฐ’ ๋ณต์‚ฌ 

 NOT NULL์„ ์ œ์™ธํ•œ ๋‹ค๋ฅธ ์ œ์•ฝ ์กฐ๊ฑด์€ ๋ณต์‚ฌโŒ

 

๊ธฐ๋ณธํ˜•์‹

   CREATE  TABLE  ํ…Œ์ด๋ธ”๋ช… [(์ปฌ๋Ÿผ๋ช…, ์ปฌ๋Ÿผ๋ช…,...)] AS subquery;

 

2. ALTER


1. ALTER TABLE ~ ADD
 ๊ธฐ์กด์˜ ํ…Œ์ด๋ธ”์— ์ƒˆ๋กœ์šด ์ปฌ๋Ÿผ์„ ์ถ”๊ฐ€ 

์ƒˆ๋กœ ์ถ”๊ฐ€๋˜๋Š” ์ปฌ๋Ÿผ์€ ํ…Œ์ด๋ธ” ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰์— ์ถ”๊ฐ€ 

ํ˜•์‹

ALTER TABLE ํ…Œ์ด๋ธ”๋ช… ADD (์ปฌ๋Ÿผ๋ช… ์ž๋ฃŒํ˜•(ํฌ๊ธฐ));

์˜ˆ์‹œ

ALTER TABLE test ADD (dept VARCHAR2(30), sal NUMBER(3) NOT NULL);
ALTER TABLE emp4 ADD (
    birth DATE GENERATED ALWAYS AS (TO_DATE(SUBSTR(rrn, 1,6), 'RRMMDD')) VIRTUAL
);

์ฃผ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์กด์žฌํ•˜๋Š” ํ…Œ์ด๋ธ”์—  NOT NULL ์†์„ฑ์˜ ์ปฌ๋Ÿผ์„ ์ถ”๊ฐ€โŒ




2.  ์ปฌ๋Ÿผ ์ˆ˜์ • ALTER TABLE ~ MODIFY

 

ํ˜•์‹ 

ALTER TABLE ํ…Œ์ด๋ธ”๋ช… MODIFY (์ปฌ๋Ÿผ๋ช… ์ž๋ฃŒํ˜•(ํฌ๊ธฐ));

์˜ˆ์‹œ

ALTER TABLE test MODIFY(sal NUMBER(10));


3.  ALTER TABLE ~ RENAME COLUMN : ์ปฌ๋Ÿผ์˜ ์ด๋ฆ„ ๋ณ€๊ฒฝ                       

                                                                                                                                                                                                                                 ํ˜•์‹

ALTER TABLE ํ…Œ์ด๋ธ”๋ช… RENAME COLUMN ์ปฌ๋Ÿผ๋ช… TO ์ƒˆ๋กœ์šด์ปฌ๋Ÿผ๋ช…


 ์˜ˆ์‹œ              

ALTER TABLE test RENAME COLUMN num TO empNo;

                                                               

4. ALTER TABLE ~ DROP COLUMN : ์ปฌ๋Ÿผ ์‚ญ์ œ 

๋ฐ์ดํ„ฐ๊ฐ€ ์กด์žฌํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋„ ์‚ญ์ œ 
ํ˜•์‹

ALTER TABLE ํ…Œ์ด๋ธ”๋ช… DROP COLUMN ์ปฌ๋Ÿผ๋ช…

์˜ˆ์‹œ

ALTER TABLE test DROP COLUMN dept;


6. ALTER TABLE ~ SET UNUSED
์ปฌ๋Ÿผ์„ ๋…ผ๋ฆฌ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•˜๋„๋ก ์ œํ•œ. ๋…ผ๋ฆฌ์ ์œผ๋กœ ์‚ญ์ œ
UNUSED์— ์˜ํ•ด ์‚ญ์ œ๋œ ์ปฌ๋Ÿผ ํ™•์ธโŒ

 

ALTER TABLE emp1 SET UNUSED (pay);

 

UNUSED์— ์˜ํ•ด ์‚ญ์ œ๋œ ์ปฌ๋Ÿผ์˜ ๊ฐœ์ˆ˜๋Š” ํ™•์ธ ๊ฐ€๋Šฅ 
SELECT * FROM user_unused_col_tabs;


7. ALTER TABLE ~ DROP UNUSED COLUMNS
unused์— ์˜ํ•ด ๋…ผ๋ฆฌ์ ์œผ๋กœ ์‚ญ์ œ๋œ ์ปฌ๋Ÿผ์„ ์‹ค์ œ๋กœ ์‚ญ์ œ 

ALTER TABLE emp1 DROP UNUSED COLUMNS;


3. DROP


ํ…Œ์ด๋ธ” ์‚ญ์ œ
ํ˜•์‹

DROP TABLE ํ…Œ์ด๋ธ”;  -- ํœด์ง€ํ†ต์— ์ž„์‹œ๋ณด๊ด€ (๋ณต๊ตฌ ๊ฐ€๋Šฅ)
DROP TABLE ํ…Œ์ด๋ธ” PURGE;  -- ํœด์ง€ํ†ต์— ์ž„์‹œ๋ณด๊ด€ ํ•˜์ง€ ์•Š๊ณ  ๋ฐ”๋กœ ์‚ญ์ œ (๋ณต๊ตฌ ๋ถˆ๊ฐ€)
DROP TABLE ํ…Œ์ด๋ธ”๋ช… CASCADE CONSTRAINTS PURGE;
         -- ํ…Œ์ด๋ธ”๊ณผ ๊ทธ ํ…Œ์ด๋ธ”์„ ์ฐธ์กฐํ•˜๋Š” FOREIGN KEY์˜ ์ œ์•ฝ์กฐ๊ฑด์„ ๋™์‹œ์— ์‚ญ์ œ


4. RENAME

๊ฐ์ฒด ์ด๋ฆ„ ๋ณ€๊ฒฝ 

   RENAME ์˜›์ด๋ฆ„ TO ์ƒˆ์ด๋ฆ„;

 

 

5. RECYCLEBIN

1. ํœด์ง€ํ†ต(RECYCLEBIN) ์ •๋ณด ํ™•์ธ
2. ์‚ญ์ œ๋œ ๊ฐœ์ฒด(objects)ํ™•์ธ

SHOW RECYCLEBIN;
SELECT * FROM RECYCLEBIN;


3.ํœด์ง€ํ†ต์˜ ํ…Œ์ด๋ธ” ๋ณต์› 
์›๋ž˜ ์ด๋ฆ„์œผ๋กœ ๋ณต์›

FLASHBACK TABLE "BIN ์ด๋ฆ„" TO BEFORE DROP; --BIN ์ด๋ฆ„์œผ๋กœ 
FLASHBACK TABLE ์‚ญ์ œ์ „์ด๋ฆ„


4. ํœด์ง€ํ†ต ๋น„์šฐ๊ธฐ

PURGE RECYCLEBIN;


5. TRUNCATE
ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ ˆ์ฝ”๋“œ ์‚ญ์ œ, ํ…Œ์ด๋ธ” ๊ตฌ์กฐ๋Š” ๋ชจ๋‘ ์‚ญ์ œ X
์ž๋™ COMMIT ๋˜๋ฏ€๋กœ ๋ณต์› ๋ถˆ๊ฐ€ 

TRUNCATE TABLE ํ…Œ์ด๋ธ”๋ช…;





 

'๐Ÿ’ปProgramming > ๐Ÿ’ฝOracle' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[Oracle] ๋ฐ์ดํ„ฐ ๋”•์…”๋„ˆ๋ฆฌ(Data Dictionary)  (0) 2022.08.10
[ORACLE] ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ธ์–ด(DML)  (0) 2022.08.09
[ORACLE] SQL ํ•จ์ˆ˜ - ๋‹จ์ผํ–‰ ํ•จ์ˆ˜  (0) 2022.08.05
[Oracle] ๊ธฐ๋ณธ์ ์ธ SQL  (0) 2022.08.04
[Oracle] DQL - Select  (0) 2022.08.04
    '๐Ÿ’ปProgramming/๐Ÿ’ฝOracle' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [Oracle] ๋ฐ์ดํ„ฐ ๋”•์…”๋„ˆ๋ฆฌ(Data Dictionary)
    • [ORACLE] ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ธ์–ด(DML)
    • [ORACLE] SQL ํ•จ์ˆ˜ - ๋‹จ์ผํ–‰ ํ•จ์ˆ˜
    • [Oracle] ๊ธฐ๋ณธ์ ์ธ SQL
    yeony._.
    yeony._.
    ํž˜ ์„ธ์ง€๋Š” ์•Œ์•ฝ๐Ÿ’Š๐Ÿ’Š๐Ÿ’Š

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”