๐ ๋ค์ด๊ฐ๋ฉฐ
์ด๋ฒ ๊ธ์์๋ DDL(Data Definition Language, ๋ฐ์ดํฐ ์ ์์ด)์ ์ ๋ฆฌํ๋ค. CREATE, ALTER, TRUNCATE, DROP ๋ฑ ํ
์ด๋ธ ๊ตฌ์กฐ๋ฅผ ๋ค๋ฃจ๋ ๋ช
๋ น์ด๋ค์ด๋ค.
โ ๏ธ DDL์ ๋ฐ๋ก ์ปค๋ฐํ์ง ์์๋ ์ฆ์ ๋ฐ์๋๊ณ ๋กค๋ฐฑ์ด ๋ถ๊ฐ๋ฅํ๋ค. ๊ทธ๋์ ์ฌ์ฉํ ๋ ๋งค์ฐ ์กฐ์ฌํด์ผ ํ๋ค.
1. CREATE โ ํ
์ด๋ธ ์์ฑ
1
2
3
4
5
6
7
8
| CREATE TABLE PRODUCT(
PRODUCT_ID NUMBER,
PRODUCT_NAME VARCHAR2(30),
MANUDATE DATE
);
INSERT INTO PRODUCT(PRODUCT_ID, PRODUCT_NAME, MANUDATE)
VALUES(1, 'CELLPHONE', TO_DATE('YYMMDD'));
|
ํ
์ด๋ธยท์ด ์ด๋ฆ ๊ท์น:
| ๊ท์น | ์ค๋ช
|
|---|
| ์ค๋ณต ๋ถ๊ฐ | ๊ฐ์ ํ
์ด๋ธ๋ช
ยท๊ฐ์ ์ด ์ด๋ฆ ๋ถ๊ฐ |
| ์์ฝ์ด ๊ธ์ง | SELECT, INSERT, FROM ๋ฑ ์ฌ์ฉ ๋ถ๊ฐ |
| ๋ฌธ์๋ก ์์ | ํ๊ธยทํน์๋ฌธ์ ๊ฐ๋ฅํ๋ ๊ถ์ฅ ์ ํจ |
| ์ ๋นํ ๊ธธ์ด | ๋๋ฌด ๊ธด ์ด๋ฆ ์ง์ |
2. ALTER โ ํ
์ด๋ธ ๊ตฌ์กฐ ๋ณ๊ฒฝ
์ด ๋จ์๋ก ์ถ๊ฐยท์์ ยท์ญ์ ยท์ด๋ฆ ๋ณ๊ฒฝ์ ํ๋ค.
| ๋ช
๋ น | ์ญํ |
|---|
ADD (์ด ํ์
) | ์ด ์ถ๊ฐ |
MODIFY (์ด ํ์
) | ์ด ํ์
๋ณ๊ฒฝ |
DROP COLUMN ์ด | ์ด ์ญ์ |
RENAME COLUMN A TO B | ์ด ์ด๋ฆ ๋ณ๊ฒฝ |
1
2
3
4
| ALTER TABLE PRODUCT ADD (FACTORY VARCHAR2(10)); -- ์ถ๊ฐ
ALTER TABLE PRODUCT MODIFY (PRODUCT_NAME VARCHAR2(50)); -- ํ์
๋ณ๊ฒฝ
ALTER TABLE PRODUCT DROP COLUMN PRODUCT_NAME; -- ์ญ์
ALTER TABLE PRODUCT RENAME COLUMN PRODUCT_NAME TO PRODUCT_NAMEE; -- ์ด๋ฆ ๋ณ๊ฒฝ
|
โ ๏ธ MODIFY๋ก ํ์
์ ๋ฐ๊ฟ ๋ ๊ธฐ์กด๋ณด๋ค ์์ ํ์ผ๋ก๋ ๋ณํ ๋ถ๊ฐํ๋ค. DROP COLUMN์ ๋กค๋ฐฑ์ด ์ ๋๋ ํนํ ์กฐ์ฌํ์.
3. TRUNCATE vs DROP
1
2
| TRUNCATE TABLE PRODUCT; -- ํ์ ๋จ๊ธฐ๊ณ '๋ด์ฉ๋ง' ์ญ์
DROP TABLE PRODUCT; -- ํ
์ด๋ธ์ '์์' ์ญ์
|
| ๋ช
๋ น | ์ญ์ ๋์ |
|---|
TRUNCATE | ๋ฐ์ดํฐ(๋ด์ฉ)๋ง, ๊ตฌ์กฐ๋ ์ ์ง |
DROP | ํ
์ด๋ธ ์์ฒด ์ญ์ |
๐ ์ ๋ฆฌ
1
2
3
4
5
6
| DDL (๋ฐ์ดํฐ ์ ์์ด)
โโ CREATE ํ
์ด๋ธ ์์ฑ
โโ ALTER ADD/MODIFY/DROP COLUMN/RENAME (๊ตฌ์กฐ ๋ณ๊ฒฝ)
โโ TRUNCATE ๋ด์ฉ๋ง ์ญ์ (๊ตฌ์กฐ ์ ์ง)
โโ DROP ํ
์ด๋ธ ์์ฒด ์ญ์
โ ๏ธ ์ฆ์ ๋ฐ์ + ๋กค๋ฐฑ ๋ถ๊ฐ โ ์ ์คํ!
|
| ๊ฐ๋
| ํ ์ค ์ ์ |
|---|
| CREATE | ํ
์ด๋ธ ์์ฑ |
| ALTER | ์ด ๋จ์ ๊ตฌ์กฐ ๋ณ๊ฒฝ |
| TRUNCATE vs DROP | ๋ด์ฉ๋ง ์ญ์ vs ํ
์ด๋ธ ์ญ์ |
DDL์ ํ
์ด๋ธ์ โ๊ตฌ์กฐโ๋ฅผ ๋ค๋ฃจ๋ ๊ฐ๋ ฅํ ๋ช
๋ น์ด๋ค. ๋กค๋ฐฑ์ด ๋ถ๊ฐ๋ฅํ๋ค๋ ์ ์ด DML๊ณผ์ ๊ฒฐ์ ์ ์ฐจ์ด์ด๋, ์คํ ์ ์ ํญ์ ํ ๋ฒ ๋ ํ์ธํ๋ ์ต๊ด์ ๋ค์ด์.
Comments powered by Disqus.