๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅ Computer Science/Database

[Database] ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์–ธ์–ด๋ž€? (feat. DDL,DML,DCL,TCL)

by Fomagran ๐Ÿ’ป 2022. 2. 25.
728x90
๋ฐ˜์‘ํ˜•

์•ˆ๋…•ํ•˜์„ธ์š” Foma ๐Ÿ’ป ์ž…๋‹ˆ๋‹ค!

 

์ €๋ฒˆ ๊ธ€์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋Œ€ํ•ด ๋‹ค๋ค˜๋Š”๋ฐ, ์˜ค๋Š˜์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์–ด๋–ค ์–ธ์–ด๊ฐ€ ์žˆ๋Š”์ง€ ์‚ดํŽด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

๋ฐ”๋กœ ์‹œ์ž‘ํ• ๊ฒŒ์š”~


๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด๋ž€?

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด๋Š” ์ปดํ“จํ„ฐ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…์„ ์œ„ํ•œ ์ปดํ“จํ„ฐ ์–ธ์–ด์ด๋‹ค. 
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ฌ์šฉ์ž ๋ฐ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์†Œํ”„ํŠธ์›จ์–ด๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๋‹ค. 
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ทจ๊ธ‰ํ•˜๋Š” ๊ธฐ๋Šฅ ์ค‘ ๊ฒ€์ƒ‰์ด ์ค‘์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํ†ต๋ก€๋Š” ์ฟผ๋ฆฌ ์–ธ์–ด๋ผ๊ณ ๋„ ๋ถˆ๋ฆฐ๋‹ค. 
๊ทธ๋Ÿฌ๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด ๋ฐ ์งˆ์˜ ์–ธ์–ด๋Š” ๊ฐœ๋…์ ์œผ๋กœ ๊ฒน์น˜๋Š” ๋ถ€๋ถ„๋„ ์žˆ์ง€๋งŒ, ๋™์˜์–ด๋Š” ์•„๋‹ˆ๋‹ค. - ์œ„ํ‚ค ๋ฐฑ๊ณผ -

 

์ฆ‰, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ž‘์—…ํ•˜๊ธฐ ์œ„ํ•œ ์ปดํ“จํ„ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.


Query

์ฟผ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์งˆ์˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์— ์งˆ์˜๋ฅผ ํ•œ๋‹ค๋Š”๊ฒŒ ๋ฌด์Šจ ๋ง์ผ๊นŒ์š”?

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์— ์›ํ•˜๋Š” ํ…Œ์ด๋ธ”์„ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œ ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญ(์งˆ์˜)ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์–ป๋Š”๋‹ค๊ณ  ์ดํ•ดํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ฟผ๋ฆฌ๋Š” ์–ธ์–ด๊ฐ€ ์•„๋‹Œ ์š”์ฒญํ•˜๋Š” ํ–‰์œ„์ž…๋‹ˆ๋‹ค.


SQL(Structured Query Language)

 

SQL์€ ์œ„์—์„œ ์„ค๋ช…ํ•œ ์ฟผ๋ฆฌ๋ฅผ ๊ตฌ์กฐํ™” ์‹œํ‚จ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

 

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค๋กœ๋ถ€ํ„ฐ ์š”์ฒญ(์งˆ์˜)๋ฅผ ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›๋Š” ์–ธ์–ด์ด๊ธฐ ๋•Œ๋ฌธ์— ์งˆ์˜์–ด๋ผ๊ณ ๋„ ๋ถˆ๋ฆฝ๋‹ˆ๋‹ค.

์ฆ‰, SQL์ด ๋ฐ”๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์†Œํ†ต์„ ํ•  ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ SQL์ด ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์–ธ์–ด์™€ ๋™์˜์–ด๋Š” ์•„๋‹™๋‹ˆ๋‹ค.

์ด์œ ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์–ธ์–ด์˜ ๊ฐœ๋…์€ ์ˆœ์ˆ˜ํ•˜๊ฒŒ ๊ฒ€์ƒ‰ ์ด์ƒ์˜ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๋ฉฐ, 

 

SQL์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ด์™ธ์˜ ์˜์—ญ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

SQL ๋ฌธ๋ฒ•์€ ํฌ๊ฒŒ DDL,DML,DCL,TCL์œผ๋กœ ๋‚˜๋‰˜์–ด ์ง€๋Š”๋ฐ ํ•˜๋‚˜์”ฉ ์‚ดํŽด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


DDL(Data Definition Language): ๋ฐ์ดํ„ฐ ์ •์˜ ์–ธ์–ด

๋ฐ์ดํ„ฐ๋ฅผ ์ •์˜ํ•˜๋Š” ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

์ฆ‰, ๋ฐ์ดํ„ฐ์˜ ์ „์ฒด์ ์ธ ๊ตฌ์กฐ๋‚˜ ๊ณจ๊ฒฉ์„ ๊ฒฐ์ •ํ•˜๋Š” ์—ญํ• ์ž…๋‹ˆ๋‹ค.

๊ตฌ์กฐ๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค,์Šคํ‚ค๋งˆ,ํ…Œ์ด๋ธ”์ด ํ•„์š”ํ•œ์ง€๋ฅผ ์„ค๊ณ„ํ•ฉ๋‹ˆ๋‹ค.

์ „์ฒด์ ์ธ ๊ตฌ์กฐ๋ฅผ ์ƒ์„ฑ(CREATE)ํ•˜๊ณ  ์ˆ˜์ •ํ•˜๊ณ (ALTER) ์‚ญ์ œํ•˜๊ณ (DROP) ์ดˆ๊ธฐํ™”(TRUNCATE) ์‹œํ‚ค๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.


DML(Data Manipulation Language): ๋ฐ์ดํ„ฐ ์กฐ์ž‘ ์–ธ์–ด

๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

๊ตฌ์กฐ๊ฐ€ ์•„๋‹Œ ํ…Œ์ด๋ธ” ์•ˆ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

์ฆ‰, ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ (INSERT) ์ˆ˜์ •ํ•˜๊ณ (UPDATE) ์‚ญ์ œํ•˜๊ณ (DELETE) ๊ฒ€์ƒ‰ํ•˜๋Š”(SEARCH) ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.


DCL(Data Control Language): ๋ฐ์ดํ„ฐ ์ œ์–ด ์–ธ์–ด

๋ฐ์ดํ„ฐ๋ฅผ ์ œ์–ดํ•˜๋Š” ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

์ œ์–ดํ•œ๋‹ค๋Š” ๊ฒƒ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ๊ถŒํ•œ์„ ์ฃผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ฆ‰, ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ๊ถŒํ•œ์„ ์ฃผ๊ณ (GRANT), ๊ถŒํ•œ์„ ๋ฐ•ํƒˆ(REVOKE) ํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ๊ถŒํ•œ์€ ์–ด๋–ค ๊ฒŒ ์žˆ์„๊นŒ์š”?

๋ฐ์ดํ„ฐ๋ฅผ ์—ฐ๊ฒฐ(CONNECT),๊ฒ€์ƒ‰(SELECT),์ถ”๊ฐ€(INSERT),์ˆ˜์ •(UPDATE),์‚ญ์ œ(DELETE),์‚ฌ์šฉ(USAGE) ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.


TCL(Transaction Control Language)

ํŠธ๋žœ์žญ์…˜์„ ์ œ์–ดํ•˜๋Š” ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

ํŠธ๋žœ์žญ์…˜์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ƒํƒœ๋ฅผ ๋ณ€ํ™”์‹œํ‚ค๋Š” ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์ž‘์—…์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋ณ€ํ™”์‹œํ‚ค๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋ฏ€๋กœ TCL์€ DB๋ฅผ ๋ณ€ํ™”์‹œํ‚ค๋Š” ์ž‘์—…์„ ์ œ์–ดํ•˜๋Š” ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

์ฆ‰, ์ˆ˜์ •ํ•œ ์ž‘์—…์„ ์ €์žฅํ•˜๊ฑฐ๋‚˜(COMMIT),์ด์ „์— ์ˆ˜์ •ํ•œ ์ž‘์—…์„ ์ทจ์†Œํ•˜๊ณ (ROLLBACK),ํŠน์ • ์ง€์ ์œผ๋กœ ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ๋Š”(SAVEPOINT) ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€