DDL(Data Definition Language)
ํด๋ฆญ ๋ช๋ฒ์ผ๋ก ํ ์ด๋ธ ๋ง๋ค๊ณ ์ปฌ๋ผ ๋ง๋๋ ๋ฒ์ ๋ฐฐ์๋ดค๋๋ฐ
์ค์ SQL ์ฝ๋๋ก๋ ํ ์ด๋ธ๊ณผ ์ปฌ๋ผ์ ๋ง๋ค ์ ์์ต๋๋ค.
๋ด๊ฐ ๊ทธ๋ฅ ๋ง๋จ ์ง์์ด๋ผ๋ฉด ํ ์ด๋ธ ์์ฑ๋ณด๋ค๋ ํ ์ด๋ธ์ ๊ฐ์ ธ๋ค์ฐ๋ ์ผ๋ง ๋ง์ ์ ์๊ฒ ์ง๋ง
๋์ค์ ์ด๋ป๊ฒ ๋ ์ง ๋ชจ๋ฅด๋ ์ผ ์๋๊ฒ ์ต๋๊น.
๊ทธ๋์ ์ค๋์ SQL ๋ฌธ๋ฒ์ผ๋ก ์๋ก์ด ํ ์ด๋ธ๊ณผ ์ปฌ๋ผ๋ง๋๋ ๋ฒ์ ๋ฐฐ์๋ด ์๋ค.
DDL
๋ฐ์ดํฐ ์ ์์ด๋? ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ์ํ๋ ์ธ์ด์ด๋ฉฐ, ๋ฐ์ดํฐ๋ฅผ ์์ฑ, ์์ , ์ญ์ ํ๋ ๋ฑ์ ๋ฐ์ดํฐ์ ์ ์ฒด์ ๊ณจ๊ฒฉ์ ๊ฒฐ์ ํ๋ ์ญํ ์ ํ๋ ์ธ์ด์ด๋ค.
create : ๋ฐ์ดํฐ๋ฒ ์ด์ค, ํ ์ด๋ธ๋ฑ์ ์์ฑ
alter : ํ ์ด๋ธ์ ์์
drop : ๋ฐ์ดํฐ๋ฒ ์ด์ค, ํ ์ด๋ธ์ ์ญ์
truncate : ํ ์ด๋ธ์ ์ด๊ธฐํ
โปSCHEMA, DOMAIN, TABLE, VIEW, INDEX๋ฅผ ์ ์ํ๊ฑฐ๋ ๋ณ๊ฒฝ ๋๋ ์ญ์ ํ ๋ ์ฌ์ฉํ๋ ์ธ์ด โป๋ฐ์ดํฐ ๋ฒ ์ด์ค ๊ด๋ฆฌ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ์๊ฐ ์ฌ์ฉ
์ฐ๋ฆฌ๊ฐ ์ง๊ธ๊น์ง ๋ฐฐ์ ๋ SELECT ๋ฌธ์
DML(Data Manipulation Language) ์ด๋ผ๊ณ ํ๋ค .
DML
๋ฐ์ดํฐ ์กฐ์์ด๋? ์ ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๋ ฅ๋ ๋ ์ฝ๋๋ฅผ ์กฐํํ๊ฑฐ๋ ์์ ํ๊ฑฐ๋ ์ญ์ ํ๋ ๋ฑ์ ์ญํ ์ ํ๋ ์ธ์ด.
select : ๋ฐ์ดํฐ ์กฐํ
insert : ๋ฐ์ดํฐ ์ฝ์
update : ๋ฐ์ดํฐ ์์
delete : ๋ฐ์ดํฐ ์ญ์
โป๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์๊ฐ ์์ฉ ํ๋ก๊ทธ๋จ์ด๋ ์ง์์ด๋ฅผ ํตํ์ฌ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์ค์ง์ ์ผ๋ก ์ฒ๋ฆฌํ๋๋ฐ ์ฌ์ฉํ๋ ์ธ์ด โป๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ ๊ฐ์ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณต
DCL(Data Control Language) ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๊ทผํ๊ฑฐ๋ ๊ฐ์ฒด์ ๊ถํ์ ์ฃผ๋๋ฑ์ ์ญํ ์ ํ๋ ์ธ์ด
grant : ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์์๊ฒ ํน์ ์์ ์ ๋ํ ์ํ ๊ถํ์ ๋ถ์ฌ
revoke : ํน์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฌ์ฉ์์๊ฒ ํน์ ์์ ์ ๋ํ ์ํ ๊ถํ์ ๋ฐํ, ํ์
commit : ํธ๋์ญ์ ์ ์์ ์ ์ ์ฅ
rollback : ํธ๋์ญ์ ์ ์์ ์ ์ทจ์, ์๋๋๋ก ๋ณต๊ตฌ
ROLL ๊ฐ์ฒด
โปROLE ์ข ๋ฅ CONNECT : DB ์ ์ ๊ถํ RESOURCE : ํ ์ด๋ธ์ด๋ผ๋ ์ง ์ธ๋ฑ์ค๋ผ๋ ์ง ์์ฑํ ์ ์๋ ๊ถํ CREATE VIEW : ๋ทฐ ์์ฑ ๊ถํ DBA : ๋ชจ๋ ๊ถํ(๊ด๋ฆฌ์)
ํ
์ด๋ธ ์์ฑ
์ํ๋ ์คํค๋ง์์ SQL ํธ์ง๊ธฐ ์์ฑํด์ ์ด๊ฑฐ ์คํํ๋ฉด ๋ฉ๋๋ค.
datatype ๋์ ๋ฐ์ดํฐํ์ ์ ์ ํด์ ๋ฃ์ด์ฃผ๋ฉด ๋ฉ๋๋ค.
์ฌ๋์ ๋ณด๋ฅผ ์ ์ฅํ๊ณ ์ถ์ด์ ์ด๋ฐ ํ ์ด๋ธ์ ๋ง๋ค์ด๋ดค์ต๋๋ค.
์คํํ๋ฉด ์ง์ง ํ ์ด๋ธ ์๊น๋๋ค. ์๋ณด์ด๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐํด๋ฆญํด์ ์๋ก๊ณ ์นจํด๋ณด์
๋ง์ด๋ค ์ค์ํ๋ ํฌ์ธํธ๋ ๋ง์ง๋ง ์ค์๋ ์ฝค๋ง (,) ๋ฃ์ผ๋ฉด ์๋ฉ๋๋ค.
์ปฌ๋ผ๋ง๋ค ๋ ๋ค์ DEFAULT ์ ๊ฐ์ ์ ๋ ฅํ๋ฉด
์ปฌ๋ผ์ ๋ฐ์ดํฐ๊ฐ ์๋ค์ด์ฌ ๋ ๊ธฐ๋ณธ์ผ๋ก ์ฑ์์ค ๊ฐ์ ์ค์ ๊ฐ๋ฅํฉ๋๋ค.
์๋ ๋ฐ์ดํฐ ์๋ค์ด์ค๋ฉด NULL์ ์ฑ์์ฃผ๋๋ฐ ์์ ๊ฒฝ์ฐ์ 'ํ๊ธธ๋'์ด ์ฑ์์ง๋๋ค.
ํ
์ด๋ธ ์ญ์
์คํํ๋ฉด ๋ฉ๋๋ค.
์ญ์ ์ ๋๋๋ฆด ์ ์์ต๋๋ค.
์ปฌ๋ผ ์์ฑ, ๋ณ๊ฒฝ, ์ญ์
์ปฌ๋ผ ์ถ๊ฐ
(์ฐธ๊ณ ) ์ปฌ๋ผ์ถ๊ฐ์ ์ด๋ฏธ ํ๋ค์ด ๋ง์ด ์์ผ๋ฉด
์๋ก์ด ์ปฌ๋ผ์ ๋ค์ด๊ฐ ๊ธฐ๋ณธ๊ฐ์ NULL์ด ๋๋๋ฐ
๊ทธ๊ฑฐ ๋ง๊ณ ๋ค๋ฅธ๊ฑธ๋ก ์ฑ์ฐ๋ ค๋ฉด ์์์ ํ๋ DEFAULT ๋ฌธ๋ฒ๋ ํ๋ฒ ์จ๋ณด์ญ์์ค.
์ปฌ๋ผ์ ๋ฐ์ดํฐํ์ ์ด ๋ณ๊ฒฝ
datatype ๋์ NUMBER, VARCHAR() ๋ฑ ์๋ฌด๊ฑฐ๋ ๋ฃ์ ์ ์์ต๋๋ค.
ํ์ง๋ง ์ด๋ฏธ ์ปฌ๋ผ์ '๊ฐ๋๋ค' ์ด๋ฐ ๋ฌธ์๊ฐ ์๋ ๊ฒฝ์ฐ์ NUMBER ํ์ ์ผ๋ก ๋ณ๊ฒฝํ๋๊ฑด ๋ถ๊ฐ๋ฅํฉ๋๋ค.
์ด๋ฐ ์์ผ๋ก ์ปฌ๋ผ์ ํ ๋ฒ ๋ง๋ค์ด ๋์ผ๋ฉด ๋ณ๊ฒฝ์ด ๋ถ๊ฐ๋ฅํ ๋๊ฐ ๋ง์์
๋ณ๊ฒฝ์ด ํ์ํ๋ฉด ์๋ก ํ ์ด๋ธ ๋ง๋ค์ด์ ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธฐ๋ ์์ผ๋ก ํ๊ฑฐ๋ ๊ทธ๋ฐ ๊ฒฝ์ฐ๋ค์ด ์์ต๋๋ค.
๊ทธ๋์ ์ฒ์ ๋ง๋ค ๋ ์ ๋ง๋ค์ด๋ก์๋ค.
์ปฌ๋ผ ๋ช ๋ณ๊ฒฝ
์ ๋ฐฉ์์ผ๋ก ํ ์ ์๋๋ฐ ์๋น์ค์ค์ธ ์์คํ ์ด๋ผ๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ ํ๋ฅ ์ด ๋์์ ์ ์ฌ์ฉํ์ง๋ ์์ต๋๋ค.
๊ฐ๋ฐ๋จ๊ณ์์๋ ์ฌ์ฉ ํ ์๋ ์์ต๋๋ค.
์ปฌ๋ผ ์ญ์
์ ๋ฐฉ์์ผ๋ก ์ปฌ๋ผ ์ญ์ ๋ ๊ฐ๋ฅ
(์ฐธ๊ณ )
- ํญ์ ์์ํ ๊ฒ ๋ณด๋ค ๋ ํฐ ๋ฌธ์๋ ์ซ์๊ฐ ๋ค์ด์ฌ ์ ์์ผ๋ฏ๋ก ๊ธ์ ์ ์ ํ์ ๋๋ํ๊ฒ ์ก์์๋ค.
โ๏ธ์ด๋ฒ๋งํผ์ ํด๋ฆญ ๋ง๊ณ DDL๋ก ์ง์ ์์ฑํด๋ด ์๋ค.
Q1. ์ ์ ์ด๋ฆ, ์ ํ๋ฒํธ๋ฅผ ์ ์ฅํ ํ ์ด๋ธ member๋ฅผ ๋ง๋ค์ด๋ด ์๋ค.
Q2. ๋ฐฉ๊ธ ๋ง๋ ํ ์ด๋ธ์ '๋์ด'๋ฅผ ์ ์ฅํ ์ปฌ๋ผ์ ์ถ๊ฐํด๋ด ์๋ค.
Q3. ๋ถ๋๋ฌ์ฐ๋๊น ๋ฐฉ๊ธ ๋ง๋ ํ ์ด๋ธ์ ์ญ์ ํด๋ด ์๋ค.
Last updated