๐ ๋ฐ์ดํฐ๋ฒ ์ด์ค(DB: database)
โ ์ฌ๋ฌ ์ฌ๋์ด ๊ณต์ ํ์ฌ ์ฌ์ฉํ ๋ชฉ์ ์ผ๋ก ์ฒด๊ณํํด ํตํฉ, ๊ด๋ฆฌํ๋ ๋ฐ์ดํฐ์ ์งํฉ์ด๋ค
->์์ฑ๋ ๋ชฉ๋ก์ผ๋ก์จ ์ฌ๋ฌ ์์ฉ ์์คํ ๋ค์ ํตํฉ๋ ์ ๋ณด๋ค์ ์ ์ฅํ์ฌ ์ด์ํ ์ ์๋ ๊ณต์ฉ ๋ฐ์ดํฐ๋ค์ ๋ฌถ์์ด๋ค.
โ ํน์ ๊ด์ฌ์ ๋ฐ์ดํฐ๋ฅผ ์์งํ์ฌ ๊ทธ ๋ฐ์ดํฐ์ ์ฑ๊ฒฉ์ ๋ง๋๋ก ์ ์ค๊ณํ์ฌ ์ ์ฅํ๊ณ ๊ด๋ฆฌํจ์ผ๋ก์จ
โ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ ์์
โ ์์ฉ ํ๋ก๊ทธ๋จ๊ณผ๋ ๋ค๋ฅธ ๋ณ๋์ ๋ฏธ๋ค์จ์ด์ธ DBMS์ ์ํด ๊ด๋ฆฌ๋ฉ๋๋ค.
๐ ๋ฐ์ดํฐ ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ DBMS(Database Management System)
โ ์ฐ๊ฒฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ํจ๊ป ๋ฐ์ดํฐ์ DBMS๋ฅผ ํ๋๋ก ๋ฌถ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ด๋ผ๊ณ ํ๋ฉฐ ๋จ์ถํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ผ๊ณ ๋ ํฉ๋๋ค.
โ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ถ๊ฐ, ์ญ์ , ๋ณ๊ฒฝ, ๊ฒ์์ ํ ์ ์๋ ๊ธฐ๋ฅ ์ ๊ณต
โ ์ค๋๋ ์ด์๋๊ณ ์๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ์ ํ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ๋ ์ผ๋ฐ์ ์ผ๋ก ์ฒ๋ฆฌ ๋ฐ ๋ฐ์ดํฐ ์ฟผ๋ฆฌ๋ฅผ ํจ์จ์ ์ผ๋ก ์ํํ๊ธฐ ์ํด ์ผ๋ จ์ ํ ์ด๋ธ์์ ํ๊ณผ ์ด๋ก ๋ชจ๋ธ๋ง๋ฉ๋๋ค.
โ ๋ฐ์ดํฐ์ ์ฝ๊ฒ ์ก์ธ์คํ๊ณ ๊ด๋ฆฌ, ์์ , ์ ๋ฐ์ดํธ, ์ ์ด ๋ฐ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
โ ๋๋ถ๋ถ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ฐ์ดํฐ ์์ฑ ๋ฐ ์ฟผ๋ฆฌ์ SQL(Structured Query Language)์ ์ฌ์ฉํฉ๋๋ค.)
โ DBMS๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ต์ข ์ฌ์ฉ์ ๋๋ ํ๋ก๊ทธ๋จ ๊ฐ์ ์ธํฐํ์ด์ค ์ญํ ์ ํ์ฌ ์ฌ์ฉ์๊ฐ ์ ๋ณด์ ๊ตฌ์ฑ ๋ฐ ์ต์ ํ ๋ฐฉ๋ฒ์ ๊ฒ์, ์ ๋ฐ์ดํธ ๋ฐ ๊ด๋ฆฌํ ์ ์๊ฒ ํด์ค๋๋ค. ๋ํ DBMS๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ๋ ๋ฐ ์ ์ด๊ฐ ์ฉ์ดํ์ฌ ์ฑ๋ฅ ๋ชจ๋ํฐ๋ง, ํ๋, ๋ฐฑ์ , ๋ณต๊ตฌ ๊ฐ์ ๋ค์ํ ๊ด๋ฆฌ ์์ ์ด ๊ฐ๋ฅํฉ๋๋ค.
โ ์ธ๊ธฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํํธ์จ์ด ๋๋ DBMS๋ก๋ MySQL, Microsoft Access, Microsoft SQL Server, FileMaker Pro, ์ค๋ผํด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐ dBASE๊ฐ ์์ต๋๋ค.
๐ํน์ง
1. ์ฌ์ฉ์์ ์ง์์ ๋ํ์ฌ ์ฆ๊ฐ์ ์ธ ์ฒ๋ฆฌ์ ์๋ต์ด ์ด๋ฃจ์ด์ง๋๋ค.
2. ์์ฑ, ์์ , ์ญ์ ๋ฅผ ํตํ์ฌ ํญ์ ์ต์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ์งํฉ๋๋ค.
3. ์ฌ์ฉ์๋ค์ด ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ๋์์ ๊ณต์ ํ ์ ์์ต๋๋ค.
4. ์ฌ์ฉ์๊ฐ ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ฃผ์๊ฐ ์๋ ๋ด์ฉ์ ๋ฐ๋ผ ์ฐธ์กฐ ํ ์ ์์ต๋๋ค.
5. ์์ฉํ๋ก๊ทธ๋จ๊ณผ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ ๋ฆฝ๋์ด ์์ผ๋ฏ๋ก, ๋ฐ์ดํฐ์ ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ์ ์์ฉํ๋ก๊ทธ๋จ์ ๋ณ๊ฐ๋ก ๋์๋ฉ๋๋ค.
์ฅ์ | ๋จ์ |
๋ฐ์ดํฐ ์ค๋ณต ์ต์ํ | ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๋ฌธ๊ฐ ํ์ |
๋ฐ์ดํฐ ๊ณต์ | ๋ง์ ๋น์ฉ ๋ถ๋ด |
์ผ๊ด์ฑ, ๋ฌด๊ฒฐ์ฑ, ๋ณด์์ฑ ์ ์ง | ๋ฐ์ดํฐ ๋ฐฑ์ ๊ณผ ๋ณต๊ตฌ๊ฐ ์ด๋ ค์ |
์ต์ ์ ๋ฐ์ดํฐ ์ ์ง | ์์คํ ์ ๋ณต์กํจ |
๋ฐ์ดํฐ์ ํ์คํ ๊ฐ๋ฅ | ๋์ฉ๋ ๋์คํฌ๋ก ์์ธ์ค๊ฐ ์ง์ค๋๋ฉด ๊ณผ๋ถํ ๋ฐ์ |
๋ฐ์ดํฐ์ ๋ ผ๋ฆฌ์ , ๋ฌผ๋ฆฌ์ ๋ ๋ฆฝ์ฑ | |
์ฉ์ดํ ๋ฐ์ดํฐ ์ ๊ทผ | |
๋ฐ์ดํฐ ์ ์ฅ ๊ณต๊ฐ ์ ์ฝ |
๐๊ด๊ณํ ๋ฐ์ดํฐ ๋ฒ ์ด์ค
โ E.F. Codd ๋ฐ์ฌ๋ 1970๋ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ ์ํ ๊ด๊ณํ ๋ชจ๋ธ์ ์ ์.
โ ์ด๊ฒ์ด RDBMS(๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ )์ ๊ธฐ์ด
โ ๊ด๊ณํ ๋ชจ๋ธ์ ๊ตฌ์ฑ
๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ฐ์ฒด ๋๋ ๊ด๊ณ์ ๋ชจ์ |
๊ด๊ณ์ ์ ์ฉ๋์ด ๋ค๋ฅธ ๊ด๊ณ ์์ฑ์ ํ ์ ์๋๋ก ํด์ฃผ๋ ์ฐ์ฐ์ ์งํฉ |
์ ํ์ฑ๊ณผ ์ผ๊ด์ฑ์ ์ํ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ |
โ ๊ด๊ณํ ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ํน์ง
SQL๋ฌธ์ ์คํํ์ฌ ์ก์ธ์คํ๊ณ ์์ |
๋ฌผ๋ฆฌ์ ์ธ ํฌ์ธํฐ๊ฐ ์๋ ํ ์ด๋ธ์ ๊ฐ๊ณ ์๋ค. |
์ฐ์ฐ์ ์งํฉ์ ์ฌ์ฉํ๋ค. |
๐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ์ด
โ ๋ฐ์ดํฐ ์ ์ ์ธ์ด(DDL:data definition language) - Create, Alter, Drop๋ฑ์ ๋ช ๋ น์ด
โ ๋ฐ์ดํฐ ์กฐ์ ์ธ์ด(DML:data manipulation language) - Select, Insert, Delete, Update...
โ ๋ฐ์ดํฐ ์ ์ด ์ธ์ด(DCL:data control language)- Grant, Revoke, Commit, Rollback...
๐๋ฐ์ดํฐ ์ ์ ์ธ์ด (DDL : Data Definition Language)
โ DB ๊ตฌ์กฐ, ๋ฐ์ดํฐ ํ์, ์ ๊ทผ ๋ฐฉ์ ๋ฑ DB๋ฅผ ๊ตฌ์ถํ๊ฑฐ๋ ์์ ํ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉํ๋ ์ธ์ด
โ ์ธ๋ถ ์คํค๋ง๋ฅผ ๋ช ์ธํฉ๋๋ค.
โ DDL์ SCHEMA, DOMAIN, TABLE, VIEW, INDEX๋ฅผ ์ ์ํ๊ฑฐ๋ ๋ณ๊ฒฝ ๋๋ ์ญ์ ํ ๋ ์ฌ์ฉํ๋ ์ธ์ด๋ก์จ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ์ฌ์์ ์ ์ํ๊ณ , ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ์๊ฐ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค.
SQL๋ฌธ | ๋ด์ฉ |
create | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ์์ฑ (SCHEMA, DOMAIN, TABLE, VIEW, INDEX๋ฅผ ์์ฑ) |
drop | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ์ญ์ (SCHEMA, DOMAIN, TABLE, VIEW, INDEX ๋ฅผ ์ญ์ ) |
alter | ๊ธฐ์กด์ ์กด์ฌํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ฅผ ๋ค์ ์ ์ํ๋ ์ญํ (Table์ ๋ํ ์ ์๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐ ์ฌ์ฉ) |
๐ ๋ฐ์ดํฐ ์กฐ์ ์ธ์ด(DML: Data Manipulation Language)
โ ์ฌ์ฉ์๋ก ํ์ฌ๊ธ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์ ์๊ฒํ๋ ๋๊ตฌ๋ก์จ ์ฌ์ฉ์(์์ฉ ํ๋ก๊ทธ๋จ)์ DBMS๊ฐ์ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณต
โ ๋ํ์ ์ธ ๋ฐ์ดํฐ ์กฐ์ ์ธ์ด์๋ ์ง์์ด๊ฐ ์์ผ๋ฉฐ, ์ง์์ด๋ ํฐ๋ฏธ๋์์ ์ฃผ๋ก ์ด์ฉ๋๋ ๋น์ ์ฐจ์ ๋ฐ์ดํฐ ์ธ์ด
โ ์ ์ฐจ์ ์ธ์ด(์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๋ฉด ๊ทธ ์ ์ฐจ์ ๋ง๊ฒ ๊ธฐ์ ํ๋ ์ธ์ด)
โ ๋น์ ์ฐจ์ ์ธ์ด(๋ฐฐ์ฐ๊ธฐ ์ฝ์ง๋ง ์ฝ๋์ ํจ์จ์ฑ๋ฉด์์ ๋นํจ์จ์ )
SQL๋ฌธ | ๋ด์ฉ |
insert | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅ(ํ ์ด๋ธ์ ์๋ก์ด ํํ์ ์ฝ์ ) |
delete | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด์ ๋ฐ์ดํฐ๋ฅผ ์ญ์ (ํ ์ด๋ธ์์ ์กฐ๊ฑด์ ๋ง๋ ํํ์ ์ญ์ ) |
update | ๊ธฐ์กด์ ์กด์ฌํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด์์ ๋ฐ์ดํฐ ์์ (ํ ์ด๋ธ์์ ์กฐ๊ฑด์ ๋ง๋ ํํ์ ๋ด์ฉ์ ๋ณ๊ฒฝ) |
select | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์(ํ ์ด๋ธ์์ ์กฐ๊ฑด์ ๋ง๋ ํํ์ ๊ฒ์) |
merge | ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ฐ์ดํฐ๋ฅผ ํ ์ด๋ธ์ ์ฝ์ ๋๋ ๊ฐฑ์ |
๐ ๋ฐ์ดํฐ ์ ์ด ์ธ์ด(DCL : Data Control Language)
โ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ, ๋ณด์ ๋ฐ ๊ถํ ์ ์ด, ํ๋ณต ๋ฑ์ ํ๊ธฐ ์ํ ์ธ์ด
โ ๋ฐ์ดํฐ๋ฅผ ๋ณดํธํ๊ณ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๋ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
SQL๋ฌธ | ๋ด์ฉ |
GRANT | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด์ ๊ถํ์ ๋ถ์ฌ |
REVOKE | ์ด๋ฏธ ๋ถ์ฌ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ์ฒด์ ์ฌ์ฉ๊ถํ์ ์ทจ์ |
๐ TCL(Transaction Control Language) : ๋ฐ์ดํฐ๋ฒ ์ด์ค ํธ๋์ญ์ ์ ์ด
SQL๋ฌธ | ๋ด์ฉ |
commit | ๋ณด๋ฅ ์ค์ธ ๋ชจ๋ ๋ณ๊ฒฝ ๋ด์ฉ์ ์๊ตฌํ ์ ์ฅ(๋ช ๋ น์ ์ํด ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ค์ ๋ฌผ๋ฆฌ์ ๋์คํฌ๋ก ์ ์ฅํ๊ณ , ๋ฐ์ดํฐ๋ฒ ์ด์ค ์กฐ์ ์์ ์ด ์ ์์ ์ผ๋ก ์๋ฃ๋์์์ ๊ด๋ฆฌ์์๊ฒ ์๋ ค์ค๋๋ค.) |
rollback | ์ ์ฅ์ ํ์์๊น์ง ๋กค๋ฐฑํ๋ ๋ฐ ์ฌ์ฉ(๋ฐ์ดํฐ๋ฒ ์ด์ค ์กฐ์ ์์ ์ด ๋น์ ์์ ์ผ๋ก ์ข ๋ฃ๋์์ ๋ ์๋์ ์ํ๋ก ๋ณต๊ตฌํฉ๋๋ค.) |
savepoint | ๋ณด๋ฅ ์ค์ธ ๋ฐ์ดํฐ ๋ณ๊ฒฝ ๋ด์ฉ์ ๋ชจ๋ ๋ฒ๋ฆผ |
๋๊ธ