[Mysql] [DB] Mysql

์งฑ์ซ‘ยท2021๋…„ 12์›” 17์ผ
0
post-thumbnail

๐Ÿšถ๐Ÿปโ€โ™‚๏ธ SQL์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

  • ์‚ฌ์šฉ์ž๊ฐ€ RDBMS ์‹œ์Šคํ…œ์˜ ๋ฐ์ดํ„ฐ์— ์•ก์„ธ์Šค ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค.
  • ์ด๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ •์˜ํ•˜๊ณ  ํ•ด๋‹น ํŠน์ • ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • SQL ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ํ…Œ์ด๋ธ”์„ ๋งŒ๋“ค๊ณ  ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.
  • SQL์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ๋ณด๊ธฐ๋ฅผ ๋งŒ๋“ค๊ณ , ์ €์žฅ ํ”„๋กœ์‹œ์ €๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.
  • ํ…Œ์ด๋ธ”, ํ”„๋กœ์‹œ์ € ๋ฐ ๋ณด๊ธฐ์— ๋Œ€ํ•œ ๊ถŒํ•œ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿšถ๐Ÿพโ€โ™€๏ธ DDL (Data Define Language)

๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋…ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋˜๋Š” ํ…Œ์ด๋ธ”)์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์ˆ˜์ •ํ•˜๊ณ  ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.
๋ฐ์ดํ„ฐ ์ •์˜ ์–ธ์–ด

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ Schema(ํ˜•ํƒœ)๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ๋Š” ์ฟผ๋ฆฌ๋ฌธ์„ ์˜๋ฏธํ•œ๋‹ค. CREATE, ALTER, DROP ์ด ๋Œ€ํ‘œ์ ์ธ ์ฟผ๋ฆฌ๋ฌธ์ด๋‹ค. DDL์— ์†ํ•˜๋Š” ์ฟผ๋ฆฌ๋ฌธ์˜ ์ด๋ฆ„์—์„œ๋„ ์•Œ ์ˆ˜ ์žˆ๋“ฏ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋…ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋˜๋Š” ํ…Œ์ด๋ธ”)๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์ˆ˜์ •ํ•˜๊ณ  ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ(๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ)๋ฅผ ๋‹ค๋ฃจ๋Š” ์ฟผ๋ฆฌ๋ฌธ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • CREATE: ์ƒ์„ฑ
  • ALTER: ์ˆ˜์ •(MODIFY), ์‚ญ์ œ(DROP), ์ถ”๊ฐ€(ADD)
  • DROP: ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ ์ž์ฒด๋ฅผ ์‚ญ์ œ (DELETE์™€ ๋‹ค๋ฆ„!)
  • TRUNCATE: ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ๋Š” ๋‚จ๊ธฐ๊ณ  ๋ฐ์ดํ„ฐ๋งŒ ์ „๋ถ€ ์‚ญ์ œ
  • RENAME: ํ…Œ์ด๋ธ”๋ช…์ด๋‚˜ ์ปฌ๋Ÿผ๋ช… ๋ณ€๊ฒฝ

๐Ÿšถ๐Ÿฟ DQL (Data Query Language)

๋ฐ์ดํ„ฐ๋ฅผ ์ฟผ๋ฆฌํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” sql๋ฌธ์ด๋‹ค. (๋ฐ์ดํ„ฐ ์งˆ์˜ ์–ธ์–ด)

์ฟผ๋ฆฌ๋ฅผ ํ•œ๋‹ค ๋ผ๊ณ  ํ•˜๋Š”๋ฐ, Query์˜ ์‚ฌ์ „์  ์˜๋ฏธ๋Š” ๋ฌป๋‹ค, ์งˆ๋ฌธํ•˜๋‹ค๋ผ๋Š” ๋œป์ด๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ƒํ™ฉ์— ๋น—๋Œ€์–ด ๋ณด๋ฉด, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ•˜๋Š” ๊ฒƒ์œผ๋กœ ํ•ด์„ํ•  ์ˆ˜ ์žˆ๋‹ค. DQL์ด ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์ฟผ๋ฆฌ๋ฌธ์ด ์•„๋‹๊นŒ ์‹ถ๋‹ค.

  • SELECT: ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰

  • DQL + DML = CRUD

๐Ÿšถ๐Ÿปโ€โ™€๏ธ DML (Data Manipulation Language)

๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ์ฟผ๋ฆฌ๋ฌธ์„ ๋œปํ•œ๋‹ค. INSERT, UPDATE, DELETE๋ฌธ์ด ๋Œ€ํ‘œ์ ์ธ ์ฟผ๋ฆฌ๋ฌธ์ด๋‹ค.

  • INSERT: ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€
  • UPDATE: ๋ฐ์ดํ„ฐ ์ˆ˜์ •
  • DELETE: ๋ฐ์ดํ„ฐ ์‚ญ์ œ
  • LOCK: ํ…Œ์ด๋ธ” ์ œ์–ด ๋™์‹œ์„ฑ
  • CALL / EXPLAIN PLAN

๐Ÿšถ๐Ÿป DCL (Data Control Language)

๋ฐ์ดํ„ฐ ์ œ์–ด ์–ธ์–ด
"๊ถŒํ•œ๋ถ€์—ฌ์™€ ํ•ด์ œ"๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • GRANT: ๊ถŒํ•œ ๋ถ€์—ฌ
  • REVOKE: ๊ถŒํ•œ ํ•ด์ œ
  • COMMIT: ํŠธ๋žœ์žญ์…˜์˜ ์ž‘์—…์„ ์ทจ์†Œ ๋ฐ ์›์ƒ๋ณต๊ตฌ
  • ROLLBACK: ํŠธ๋žœ์žญ์…˜์˜ ์ž‘์—…์„ ์ทจ์†Œ ๋ฐ ์›์ƒ๋ณต๊ตฌ

๐Ÿšถ๐Ÿฟโ€โ™‚๏ธ TCL (Transaction Control Language)

ํŠธ๋žœ์žญ์…˜ ์ œ์–ด ์–ธ์–ด๋กœ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์–ด(DML) ๋ช…๋ น์–ด ์‹คํ–‰, ์ทจ์†Œ, ์ž„์‹œ์ €์žฅํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ช…๋ น์–ด

  • COMMIT: ํŠธ๋žœ์žญ์…˜ ์ปค๋ฐ‹
  • ROLLBACK: ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ํŠธ๋žœ์žญ์…˜ ๋กค๋ฐฑ
  • SAVEPOINT: ํŠธ๋žœ์žญ์…˜ ๋‚ด ์ €์žฅ์ ์„ ์„ค์ •(์ž„์‹œ์ €์žฅ)
  • SET TRANSACTION: ํŠธ๋žœ์žญ์…˜์˜ ํŠน์„ฑ์„ ์ง€์ •
profile
ไธๆ€•ๆ…ข, ๅชๆ€•็ซ™

0๊ฐœ์˜ ๋Œ“๊ธ€