๐
๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์ด(SQL)๋ ๊ทธ ๋ชฉ์ ๊ณผ ๊ธฐ๋ฅ์ ๋ฐ๋ผ ํฌ๊ฒ ์ ์์ด(DDL), ์กฐ์์ด(DML), ์ ์ด์ด(DCL)๋ก ๋ถ๋ฅ๋ฉ๋๋ค.
- DDL(Data Definition Language): ๋ฐ์ดํฐ๋ฅผ ๋ด๋ ๊ทธ๋ฆ(Column/์คํค๋ง)์ ๋ง๋ค๊ฑฐ๋ ์ ๊ฑฐํ๋ ์ธ์ด
- DML(Data Manipulation Language): ๊ทธ๋ฆ์ ๋ด๊ธด ๋ด์ฉ๋ฌผ(Row/๋ฐ์ดํฐ)์ ๋ฃ๊ณ ๋นผ๊ณ ์์ ํ๋ ์ธ์ด
- DCL(Data Control Language): ๊ทธ๋ฆ์ ์์ ๋ ์ ์๋ ์ฌ๋(User/๊ถํ)์ ์ ํ๋ ์ธ์ด

1. DDL (Data Definition Language, ๋ฐ์ดํฐ ์ ์์ด)
"๋ฐ์ดํฐ์ ๊ทธ๋ฆ(Structure)์ ๋ง๋๋ ์ธ์ด"
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ณจ๊ฒฉ(Schema)์ ์ ์ํ๊ฑฐ๋ ์์ ํ ๋ ์ฌ์ฉํฉ๋๋ค.
- ํ ์ด๋ธ์ ์ปฌ๋ผ(Column), ๋ฐ์ดํฐ ํ์ , ์ ์ฝ ์กฐ๊ฑด ๋ฑ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ๊ตฌ์กฐ ์์ฒด๋ฅผ ๋ค๋ฃน๋๋ค.
- ์คํ ์ฆ์ ๋ฐ์(Auto Commit)๋๋ฉฐ ๋๋๋ฆฌ๊ธฐ ์ด๋ ค์ด ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
| ๋ช ๋ น์ด | ์ค๋ช | ๋น๊ณ |
| CREATE | ์๋ก์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด(ํ ์ด๋ธ, ๋ทฐ, ์ธ๋ฑ์ค ๋ฑ)๋ฅผ ์์ฑํฉ๋๋ค. | CREATE TABLE ... |
| ALTER | ์ด๋ฏธ ์กด์ฌํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด์ ๊ตฌ์กฐ๋ฅผ ๋ณ๊ฒฝํฉ๋๋ค. | ์ปฌ๋ผ ์ถ๊ฐ/์ญ์ , ํ์ ๋ณ๊ฒฝ ๋ฑ |
| DROP | ์กด์ฌํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ์์ ํ ์ญ์ ํฉ๋๋ค. | ๊ตฌ์กฐ์ ๋ฐ์ดํฐ ๋ชจ๋ ์ญ์ |
| TRUNCATE | ํ ์ด๋ธ์ ๋ชจ๋ ๋ฐ์ดํฐ(Row)๋ฅผ ์ ๊ฑฐํ๊ณ ์ ์ฅ ๊ณต๊ฐ์ ์ฌ์ค์ ํฉ๋๋ค. | ๊ตฌ์กฐ(๊ป๋ฐ๊ธฐ)๋ ๋จ์. ์ญ์ ํ ๋ณต๊ตฌ ๋ถ๊ฐ. |
2. DML (Data Manipulation Language, ๋ฐ์ดํฐ ์กฐ์์ด)
"๊ทธ๋ฆ ์์ ๋ด์ฉ๋ฌผ(Row)์ ๋ค๋ฃจ๋ ์ธ์ด"
- ์ ์๋ ํ ์ด๋ธ ๊ตฌ์กฐ ์์ ์ค์ ๋ฐ์ดํฐ(Row/Record)๋ฅผ ์ ๋ ฅ, ์กฐํ, ์์ , ์ญ์ ํ๋ ์ธ์ด์ ๋๋ค.
- ๊ฐ๋ฐ์๊ฐ ๊ฐ์ฅ ๋น๋ฒํ๊ฒ ์ฌ์ฉํ๋ ๋ช ๋ น์ด๋ค์ ๋๋ค.
- ํธ๋์ญ์
(Transaction)์ ๋์์ด ๋๋ฉฐ,
COMMIT์ ์๋ROLLBACK์ ํตํด ์ทจ์ํ ์ ์์ต๋๋ค.
| ๋ช ๋ น์ด | ์ค๋ช | ๋น๊ณ |
| SELECT | ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์(์กฐํ)ํฉ๋๋ค. | ๋ฐ์ดํฐ ๋ณ๊ฒฝ ์์ |
| INSERT | ํ ์ด๋ธ์ ์๋ก์ด ๋ฐ์ดํฐ(Row)๋ฅผ ์ฝ์ (๋ฑ๋ก)ํฉ๋๋ค. | INSERT INTO ... |
| UPDATE | ํ ์ด๋ธ์ ์ ์ฅ๋ ๊ธฐ์กด ๋ฐ์ดํฐ๋ฅผ ์์ ํฉ๋๋ค. | UPDATE ... SET ... |
| DELETE | ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํฉ๋๋ค. | ์กฐ๊ฑด(WHERE) ์ง์ ๊ฐ๋ฅ. ๋ณต๊ตฌ ๊ฐ๋ฅ(Rollback). |
3. DCL (Data Control Language, ๋ฐ์ดํฐ ์ ์ด์ด)
"๊ทธ๋ฆ์ ์๋ ์ ์๋ ์ฌ๋์ ์๋ณ"
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๊ทผํ๊ณ ๊ฐ์ฒด๋ค์ ์ฌ์ฉํ๋๋ก ๊ถํ์ ๋ถ์ฌํ๊ฑฐ๋ ํ์ํ๋ ์ธ์ด์ ๋๋ค.
- ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ, ๋ณด์, ๋ณํ ์ ์ด๋ฅผ ๋ชฉ์ ์ผ๋ก ํฉ๋๋ค.
| ๋ช ๋ น์ด | ์ค๋ช |
| GRANT | ์ฌ์ฉ์์๊ฒ ํน์ ์์ ์ ๋ํ ๊ถํ์ ๋ถ์ฌํฉ๋๋ค. |
| REVOKE | ์ฌ์ฉ์์๊ฒ ๋ถ์ฌ๋ ๊ถํ์ ํ์(๋ฐํ)ํฉ๋๋ค. |
์ฃผ์ ๊ถํ ์์ธ (GRANT/REVOKE ๋์)
- CONNECT: ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋๋ ์คํค๋ง์ ์ ์(์ฐ๊ฒฐ)ํ ์ ์๋ ๊ถํ.
- USAGE: ์คํค๋ง, ์ํ์ค, ํจ์ ๋ฑ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ณธ ๊ถํ.
- SELECT / INSERT / UPDATE / DELETE: ํด๋น DML ์์
์ ์ํํ ์ ์๋ ๊ถํ.
- (์: A์ฌ์ฉ์์๊ฒ SELECT ๊ถํ๋ง ์ฃผ๋ฉด, ๋ฐ์ดํฐ ์กฐํ๋ ๊ฐ๋ฅํ์ง๋ง ์์ /์ญ์ ๋ ๋ถ๊ฐ๋ฅ)
4. Delete, Truncate, Drop ์ฐจ์ด

- DELETE
- ๋ฐ์ดํฐ๋ง ์ง์์ง๊ณ ์ฐ๊ณ ์๋ ๋์คํฌ ์์ ๊ณต๊ฐ์ ๊ทธ๋๋ก
- DELETE๋ ์ํ๋ ๋ฐ์ดํฐ๋ง ๊ณจ๋ผ์ ์ญ์ ๊ฐ ๊ฐ๋ฅ
- ROLLBACK ๊ฐ๋ฅ โญ
- TRUNCATE
- ์ต์ด ํ ์ด๋ธ์ด ๋ง๋ค์ด์ก๋ ์ํ, ์ฆ ๋ฐ์ดํฐ๊ฐ 1๊ฑด๋ ์๋ ์ํ๋ก ๋ชจ๋ ๋ฐ์ดํฐ ์ญ์ , ์นผ๋ผ๊ฐ๋ง ๋จ์ ์์ต๋๋ค.
- ์ฉ๋๋ ์ค๊ณ ์ธ๋ฑ์ค ๋ฑ๋ ๋ชจ๋ ์ญ์ ๋ฉ๋๋ค.
- ์ํ๋ ๋ฐ์ดํฐ๋ง ์ญ์ ๋ถ๊ฐ๋ฅ. ์ฌ์ฉ ์ฆ์ ๋ฐ์ดํฐ ์ด๊ธฐํ
- ROLLBACK ๊ฑฐ์ ๋ถ๊ฐ๋ฅ โญ
- DROP
- ๋ฐ์ดํฐ์ ํ ์ด๋ธ ์ ์ฒด๋ฅผ ์ญ์ .
- ์ฌ์ฉํ๊ณ ์๋ ๊ณต๊ฐ๋ ๋ชจ๋ ๋ฐ๋ฉํ๊ณ ์ธ๋ฑ์ค๋ ์ ์ฝ์กฐ๊ฑด ๋ฑ ์ค๋ธ์ ํธ๋ก ์ญ์ ๋ฉ๋๋ค.
'DB' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [DB] Transaction, ACID (0) | 2026.01.14 |
|---|---|
| [DB] ์ ๊ทํ, ์ญ์ ๊ทํ (0) | 2026.01.06 |