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 ์ฐจ์ด์
'SQLD' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 1์ฅ - 7์ GROUP BY, HAVING ์ (0) | 2021.05.21 |
---|---|
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 1์ฅ - 5์ /6์ WHERE์ , FUNCTION (0) | 2021.05.21 |
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 1์ฅ - 4์ TCL (0) | 2021.05.21 |
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 1์ฅ - 3์ DML (0) | 2021.05.21 |
๊ณผ๋ชฉII SQL ๊ธฐ๋ณธ ๋ฐ ํ์ฉ 1์ฅ - 1์ (0) | 2021.05.19 |