๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ์žฅ์›์ต ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ
๐Ÿ“š ์‹œ๋ฆฌ์ฆˆ/- ์ดˆ๋ณด์ž๋„ ์ค€๋น„ํ•˜๋Š” SQL ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ

[์ดˆ๋ณด์ž๋„ ์ค€๋น„ํ•˜๋Š” SQL ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ] ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ SQL ์ด๋ž€?

by Wonit 2021. 2. 25.

์นดํ…Œ๊ณ ๋ฆฌ ์ดˆ๋ณด์ž๋„ ์ค€๋น„ํ•˜๋Š” SQL ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์— ๊ฐ€์‹œ๋ฉด ํ•ด๋‹น ์‹œ๋ฆฌ์ฆˆ๋ฅผ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

'์‹œ๋ฆฌ์ฆˆ/- ์ดˆ๋ณด์ž๋„ ์ค€๋น„ํ•˜๋Š” SQL ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก

ํ•™์ƒ ๊ฐœ๋ฐœ์ž ์žฅ์›์ต์˜ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ

wonit.tistory.com

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ž€? ๋น ๋ฅด๊ฒŒ ์•Œ์•„๋ณด์ž.

์šฐ๋ฆฌ๊ฐ€ SQL ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ๋ฅผ ์ค€๋น„ํ•˜๊ธฐ ์ „์— ๋จผ์ € ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ž€ ๋ฌด์—‡์ธ์ง€ ์•Œ์•„๋ณด์ž.


๊ฐ„๋‹จํ•˜๊ฒŒ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์—‘์…€์ด๋‹ค.


์‹ค์ œ๋กœ ์—‘์…€๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ข…๋ฅ˜ ์ค‘ ํ•˜๋‚˜๋กœ ์ทจ๊ธ‰ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋งŽ์€ ๋ถ„์•ผ์—์„œ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค.


ํ•˜์ง€๋งŒ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋‹ค๋ค„์•ผ ํ•  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์—‘์…€๊ณผ๋Š” ์กฐ๊ธˆ ๋‹ค๋ฅธ ์„ฑ๊ฒฉ์„ ๊ฐ–๊ณ  ์žˆ๋‹ค.


์—‘์…€๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์„œ๋กœ ์กฐ๊ธˆ ๋‹ค๋ฅธ ์„ฑ๊ฒฉ์„ ๊ฐ–๋Š”๋ฐ, ์—‘์…€์€ Cell ๊ฐ„์˜ ๊ด€๊ณ„์— ๋”ฐ๋ผ์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.


ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” RDBMS๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์—ด/ํ…Œ์ด๋ธ”๊ฐ„์˜ ๊ด€๊ณ„์— ๋”ฐ๋ผ์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๋ฉฐ ์ด์šฉํ•œ๋‹ค.


๊ทธ๋ž˜์„œ ๊ฒฐ๋ก ์„ ๋น ๋ฅด๊ฒŒ ์ด์•ผ๊ธฐ ํ•ด๋ณด์ž๋ฉด,

์—‘์…€์€ Cell๊ฐ„์˜ ๊ด€๊ณ„์— ์ง‘์ค‘ํ–ˆ๋‹ค๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์—ด๊ณผ ํ…Œ์ด๋ธ”์˜ ๊ด€๊ณ„๋ฅผ ๊ณ ๋ คํ•˜๋ฉฐ ๋”์šฑ ๋…ผ๋ฆฌ์ ์œผ๋กœ ์—‘์…€๋ณด๋‹ค ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค.

 

์ฟผ๋ฆฌ๋ฌธ? SQL? ๋น ๋ฅด๊ฒŒ ์•Œ์•„๋ณด์ž

์ด๋Ÿฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์กฐ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ฟผ๋ฆฌ์— ๋Œ€ํ•œ ๊ฐœ๋…์ด ์žˆ์–ด์•ผํ•œ๋‹ค.


์ฟผ๋ฆฌ๋ฌธ๊ณผ SQL์€ ๋™์ผํ•œ ๋ง์ด๋‹ค.

 

Structured Query Language ๋ฅผ ์ค„์—ฌ SQL์ด๋ผ ํ•˜๊ณ , ์ด๋ฅผ ์ฟผ๋ฆฌ๋ฌธ์ด๋ผ๊ณ  ํ•œ๋‹ค.


์ฟผ๋ฆฌ๋ฌธ์€ ์šฐ๋ฆฌ๊ฐ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๊ฒŒ ์ €์žฅ๋œ ๊ฐ’์„ ๋ถˆ๋Ÿฌ๋‚ด๋Š” ๋ช…๋ น์–ด ํ˜น์€ ๋ฐฉ๋ฒ•์„ ๋œปํ•œ๋‹ค.


์ด๋Ÿฌํ•œ ์ฟผ๋ฆฌ๋ฌธ์„ ํ†ตํ•ด ์šฐ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๊ฒŒ์„œ ๊ฐ’์„ ๊บผ๋‚ด์˜ค๊ธฐ๋„ ํ•˜๋ฉฐ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

 

์ด๋Ÿฐ ์ฟผ๋ฆฌ๋ฌธ์€ ํฌ๊ฒŒ 3๊ฐ€์ง€๋กœ ๋‚˜๋‰œ๋‹ค.

  1. DML
  2. DDL
  3. DCL

์ด๋“ค์„ ์•Œ์•„๋ณด์ž.

DML

DML์€ Data Maniplulation Language๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์งˆ์ ์œผ๋กœ ์กฐ์ž‘ํ•˜๋Š” ๋ช…๋ น์–ด์ด๋‹ค.


๋ฐ์ดํ„ฐ ์กฐ์ž‘์ด๋ผ๊ณ  ํ•œ๋‹ค๋ฉด ์„ ํƒ, ์‚ฝ์ž…, ์ˆ˜์ •, ์‚ญ์ œ๋ฅผ ๋œปํ•˜๋Š”๋ฐ ์•ž์œผ๋กœ ๋งŽ์ด ๋ณด๊ฒŒ ๋  ์˜์—ญ์ด๋‹ค.

  • SELECT : ์„ ํƒ
  • INSERT : ์‚ฝ์ž…
  • UPDATE : ์ˆ˜์ •
  • DELETE : ์‚ญ์ œ

๊ฐ€ ๋Œ€ํ‘œ์ ์ธ DML์˜ 4ํ˜•์ œ ์ด๋‹ค.

 

๋ณดํ†ต SQL ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์—์„œ๋Š” SELECT ๊ด€๋ จ ๋ฌธ์ œ๊ฐ€ ์ฃผ๋กœ ์ถœ์ œ๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฒˆ ์‹œ๋ฆฌ์ฆˆ์—์„œ๋Š” SELECT ์— ์กฐ๊ธˆ ์ง‘์ค‘ํ•˜๋ ค ํ•œ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  ์กฐ๊ธˆ ๋” ๊นŠ๊ฒŒ ์ด์•ผ๊ธฐ๋ฅผ ํ•˜์ž๋ฉด ์ด DML์—๋Š” Transaction์ด๋ผ๋Š” ๊ฒƒ์ด ์กด์žฌํ•œ๋‹ค.


๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๊ฐ€ DML์„ ์‚ฌ์šฉํ•˜๋ฉด, Transaction์ด ๋ฐœ์ƒํ•ด์„œ ์™„์ „ํžˆ ์ ์šฉํ•˜์ง€ ์•Š๊ณ  ์ž„์‹œ๋กœ ์ ์šฉ๋œ๋‹ค. (ํ•˜์ง€๋งŒ select๋Š” transction์ด ๋ฐœ์ƒํ•˜๊ธด ํ•˜์ง€๋งŒ ์„ฑ๊ฒฉ์ด ์กฐ๊ธˆ ๋‹ค๋ฆ„)


DML์€ ๊ทธ๋ƒฅ ์•„๋ฌด ๊ณณ์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํ…Œ์ด๋ธ”์„ ๋Œ€์ƒ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๋ฏ€๋กœ ๊ทธ ์ „์— ๊ผญ ํ…Œ์ด๋ธ”์ด ์ •์˜๋˜์–ด์žˆ์–ด์•ผ ํ•œ๋‹ค.

SELECT ๋Š”?

์‚ฌ์‹ค ์œ„์˜ ์„ค๋ช…์—์„œ ์กฐ๊ธˆ ์ž˜๋ชป๋œ ๋ถ€๋ถ„์ด ์กด์žฌํ•œ๋‹ค.


์ž˜๋ชป๋œ ๋ถ€๋ถ„? ์€ ์•„๋‹ˆ์ง€๋งŒ ์กฐ๊ธˆ ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„์ด ์กด์žฌํ•œ๋‹ค.

 

๋ฐ”๋กœ SELECT ๋ฌธ์ด๋‹ค.

 

์ฑ…์— ๋”ฐ๋ผ์„œ ํ˜น์€ ๊ต์ˆ˜๋‹˜์ด๋‚˜ ํ•™์Šต ์ž๋ฃŒ์— ๋”ฐ๋ผ์„œ SELECT๋ฌธ์€ DML์— ์†ํ•œ๋‹ค, ์†ํ•˜์ง€ ์•Š๋Š”๋‹ค๋กœ ๋‹ค๋ฅธ๊ฒƒ ๊ฐ™๋‹ค.


SELECT๋ฌธ์€ ์งˆ์˜๋ฌธ์ด๋ผ๊ณ  ํ•˜์—ฌ ๋”ฐ๋กœ ์†ํ•˜๋Š” ๊ฒƒ์ด ๋งž๋‹ค๊ณ ๋Š” ํ•˜์ง€๋งŒ ์šฐ์„ ์€ ์ด๋ ‡๊ฒŒ ์•Œ์•„๋ณด์ž.

DCL

DCL์€ Data Control Language๋กœ ๋ฒˆ์—ญ ๊ทธ๋Œ€๋กœ ํ•˜์ž๋ฉด ๋ฐ์ดํ„ฐ๋ฅผ ํ†ต์ œํ•œ๋‹ค๋Š” ์–ธ์–ด์ด๋‹ค.

  • grant
  • commit

๋ณดํ†ต ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๊ด€๋ จ๋œ ์‹œ์Šคํ…œ์— ๊ด€ํ•œ ๋‚ด์šฉ์„ ๋‹ด๊ณ  ์žˆ๋Š”๋ฐ, ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ๋Š” ์ „ํ˜€ ์ถœ์ œ๋˜์ง€ ์•Š์œผ๋‹ˆ ์ด๋Ÿฐ๊ฒŒ ์žˆ๋‹ค~๋กœ๋งŒ ์•Œ์•„๋‘์ž.

DDL

DDL์€ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๋ช…๋ น์–ด์ด๋‹ค.
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, ํ…Œ์ด๋ธ”, ๋ทฐ, ์ธ๋ฑ์Šค ๋“ฑ์˜ DB ๊ฐœ์ฒด ์ƒ์„ฑ/์‚ญ์ œ/๋ณ€๊ฒฝ ์„ ๋‹ด๋‹นํ•˜๋Š”๋ฐ, DDL์€ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ ๋ณธ์ ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— DCL๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ด๋Ÿฐ๊ฒŒ ์žˆ๋‹ค~๋กœ๋งŒ ์•Œ์•„๋‘์ž.

  • CREATE
  • DROP
  • ALTER

์นดํ…Œ๊ณ ๋ฆฌ ์ดˆ๋ณด์ž๋„ ์ค€๋น„ํ•˜๋Š” SQL ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์— ๊ฐ€์‹œ๋ฉด ํ•ด๋‹น ์‹œ๋ฆฌ์ฆˆ๋ฅผ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋Œ“๊ธ€