songining
article thumbnail

2์ ˆ. DDL 

1. CREATE TABLE

ํ…Œ์ด๋ธ” ์ƒ์„ฑ์‹œ ๊ทœ์น™ :

- ๊ฐ€๋Šฅํ•œ ๋‹จ์ˆ˜ํ˜• ๊ถŒ๊ณ 

- ๋‹ค๋ฅธ ํ…Œ์ด๋ธ” ์ด๋ฆ„๊ณผ ์ค‘๋ณต X

- ํ•œ ํ…Œ์ด๋ธ” ๋‚ด์—์„œ๋Š” ์นผ๋Ÿผ๋ช…์ด ์ค‘๋ณต ๋ถˆ๊ฐ€

- ์นผ๋Ÿผ์— ๋Œ€ํ•ด์„œ๋Š” ์ผ๊ด€์„ฑ ์žˆ๊ฒŒ ์‚ฌ์šฉ

- ์นผ๋Ÿผ ๋’ค์— ๋ฐ์ดํ„ฐ ์œ ํ˜•์€ ๊ผญ ์ง€์ •๋˜์–ด์•ผ ํ•จ

- ํ…Œ์ด๋ธ”๋ช…๊ณผ ์นผ๋Ÿผ๋ช…์€ ๋ฐ˜๋“œ์‹œ ๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•ด์•ผ ํ•˜๊ณ  , ๋ฒค๋”๋ณ„๋กœ ๊ธธ์ด์— ๋Œ€ํ•œ ํ•œ๊ณ„๊ฐ ์žˆ๋‹ค. 

- ๋ฒค๋”์—์„œ ์‚ฌ์ „์— ์ •์˜ํ•œ ์˜ˆ์•ฝ์–ด๋Š” ์“ธ ์ˆ˜ ์—†๋‹ค. 

- A-Z, a-z, 0-9, _ , $, # ๋ฌธ์ž๋งŒ ํ—ˆ์šฉ 

 

CREATE TABLE ํ…Œ์ด๋ธ”์ด๋ฆ„ (

์นผ๋Ÿผ๋ช…1 ํƒ€์ž…, default ํ˜•์‹,

์นผ๋Ÿผ๋ช…2 ํƒ€์ž…, default ํ˜•์‹,

์นผ๋Ÿผ๋ช…3 ํƒ€์ž…, default ํ˜•์‹

);

 

โ€ป ์ฃผ์˜์‚ฌํ•ญ

- ํ…Œ์ด๋ธ” ์ƒ์„ฑ ์‹œ ๋Œ€/์†Œ๋ฌธ์ž ๊ตฌ๋ถ„์€ ํ•˜์ง€ ์•Š๋Š”๋‹ค. 

- DATETIME ๋ฐ์ดํ„ฐ ์œ ํ˜•์€ ๋ณ„๋„๋กœ ํฌ๊ธฐ ์ง€์ • X

- ๋ฌธ์ž ๋ฐ์ดํ„ฐ ์œ ํ˜•์€ ๋ฐ˜๋“œ์‹œ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ๊ธธ์ด๋ฅผ ํ‘œ์‹œํ•ด์•ผ ํ•œ๋‹ค. 

 

CONSTRAINT ์ œ์•ฝ์กฐ๊ฑด ์ข…๋ฅ˜ ( for ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ)

1. PRIMARY KEY(๊ธฐ๋ณธ ํ‚ค)

- ๊ณ ์œ ํ‚ค + NOT NULL

- UPDATE๋„ ๊ฐ€๋Šฅ (์ค‘๋ณต์ด ์—†์œผ๋ฉฐ ์ฐธ์กฐ ๋ฌด๊ฒฐ์„ฑ์— ์œ„๋ฐฐ๋˜์ง€ ์•Š์„ ๊ฒฝ์šฐ) 

2. UNIQUE KEY(๊ณ ์œ  ํ‚ค)

- NULL ํ—ˆ์šฉ 

3. NOT NULL

4. CHECK

- ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ’์˜ ๋ฒ”์œ„ ์ œํ•œ 

- NULL ํ—ˆ์šฉ

5. FOREIGN KEY

- NULL ํ—ˆ์šฉ

 

PK, FK ์ƒ์„ฑ ์˜ˆ์‹œ

- CONSTRAINT ์ œ์•ฝ์กฐ๊ฑด๋ช… PRIMARY KEY (pk๋กœ ์ •ํ•  ์†์„ฑ๋ช…)

- CONSTRAINT ์ œ์•ฝ์กฐ๊ฑด๋ช… FOREIGN KEY (fk๋กœ ์ •ํ•  ์†์„ฑ๋ช…) REFERENCES ์ฐธ์กฐํ•  ํ…Œ์ด๋ธ” ๋ช…(์ฐธ์กฐํ•  ์†์„ฑ๋ช…)

 

2. ALTER TABLE

 

1. ์นผ๋Ÿผ ์ถ”๊ฐ€

ALTER TABLE ํ…Œ์ด๋ธ”๋ช… 

ADD ์ถ”๊ฐ€ํ•  ์นผ๋Ÿผ๋ช… ๋ฐ์ดํ„ฐ์œ ํ˜•; 

 

2. ์นผ๋Ÿผ ์‚ญ์ œ

ALTER TABLE ํ…Œ์ด๋ธ”๋ช…

DROP COLUMN ์‚ญ์ œํ•  ์นผ๋Ÿผ๋ช…; 

 

3. ์นผ๋Ÿผ ๋ณ€๊ฒฝ

ALTER TABLE ํ…Œ์ด๋ธ”๋ช…

MODIFY (์นผ๋Ÿผ๋ช… ๋ฐ์ดํ„ฐ์œ ํ˜• default์‹ NOT NULL); 

 

โ€ป ๊ณ ๋ ค์‚ฌํ•ญ 

- ํ•ด๋‹น ์นผ๋Ÿผ์˜ ํฌ๊ธฐ๋Š” ๋Š˜๋ฆด ์ˆ˜ ์žˆ์ง€๋งŒ ์ค„์ด์ง€๋Š” ๋ชปํ•œ๋‹ค. 

- ํ•ด๋‹น ์นผ๋Ÿผ์ด NULL๊ฐ’๋งŒ ๊ฐ€์ง€๊ณ  ์žˆ๊ฑฐ๋‚˜ ํ…Œ์ด๋ธ”์— ์•„๋ฌด ํ–‰๋„ ์—†์œผ๋ฉด ์นผ๋Ÿผ์˜ ํญ์„ ์ค„์ผ ์ˆ˜ ์žˆ๊ณ  ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค. 

- ํ•ด๋‹น ์นผ๋Ÿผ์˜ default ๊ฐ’์„ ๋ฐ”๊พธ๋ฉด ๋ณ€๊ฒฝ ์ž‘์—… ์ดํ›„ ๋ฐœ์ƒํ•˜๋Š” ํ–‰ ์‚ฝ์ž…์—๋งŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜๊ฒŒ ๋œ๋‹ค. 

- ํ•ด๋‹น ์นผ๋Ÿผ์— NULL ๊ฐ’์ด ์—†์„ ๊ฒฝ์šฐ์—๋งŒ NOT NULL ์ œ์•ฝ์กฐ๊ฑด์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

4. ์นผ๋Ÿผ ์ด๋ฆ„ ๋ณ€๊ฒฝ

ALTER TABLE ํ…Œ์ด๋ธ”๋ช… 

RENAME COLUMN ์ด์ „์ปฌ๋Ÿผ๋ช… TO ์ƒˆ๋กœ์šด ์นผ๋Ÿผ๋ช…; 

 

5. ์ œ์•ฝ์กฐ๊ฑด ์ถ”๊ฐ€

ALTER TABLE ํ…Œ์ด๋ธ”๋ช…

ADD CONSTRAINT ์ œ์•ฝ์กฐ๊ฑด๋ช… ์ œ์•ฝ์กฐ๊ฑด; 

 

6. ์ œ์•ฝ์กฐ๊ฑด ์ œ๊ฑฐ

ALTER TABLE ํ…Œ์ด๋ธ”๋ช… 

DROP CONSTRAINT ์ œ์•ฝ์กฐ๊ฑด๋ช… 

 

3. RENAME TABLE 

RENAME ์ด์ „ ํ…Œ์ด๋ธ”๋ช… TO ์ƒˆ๋กœ์šด ํ…Œ์ด๋ธ”๋ช…; 

 

4. DROP TABLE

DROP TABLE ํ…Œ์ด๋ธ”๋ช… [CASCADE CONSTRAINT]:

- CASCADE CONTRAINT ์˜ต์…˜์€ ํ•ด๋‹น ํ…Œ์ด๋ธ”๊ณผ ๊ด€๊ณ„๊ฐ€ ์žˆ์—ˆ๋˜ ์ฐธ์กฐ๋˜๋Š” ์ œ์•ฝ์กฐ๊ฑด๋„ ์‚ญ์ œํ•œ๋‹ค๋Š” ๋œป 

 

5. TRUNCATE TABLE

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

- ํ…Œ์ด๋ธ” ์ž์ฒด๊ฐ€ ์‚ญ์ œ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ณ  ํ•ด๋‹น ํ…Œ์ด๋ธ”์— ๋“ค์–ด์žˆ๋˜ ๋ชจ๋“  ํ–‰๋“ค์ด ์ œ๊ฑฐ๋˜๊ณ , ์ €์žฅ ๊ณต๊ฐ„์„ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•ด์ œํ•œ๋‹ค. 

 

+) DROP/TRUNCATE/DELETE ์ฐจ์ด์ 