Search

MySQL - Workbench ์ ‘์†, ์Šคํ‚ค๋งˆ ์ƒ์„ฑ, ํ…Œ์ด๋ธ” ์ƒ์„ฑ, SQL ๊ธฐ๋ณธ

MySQL Workbench ์‹œ์ž‘๋ถ€ํ„ฐ SQL ๊ธฐ๋ณธ๊นŒ์ง€ ์‰ฝ๊ฒŒ ๋ฐฐ์šฐ๊ธฐ!

์ด ์˜์ƒ์€ MySQL Workbench์— ์ ‘์†ํ•˜๋Š” ๋ฐฉ๋ฒ•๋ถ€ํ„ฐ ์Šคํ‚ค๋งˆ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋…ผ๋ฆฌ์  ์˜์—ญ) ์ƒ์„ฑ, ํ…Œ์ด๋ธ” ๋งŒ๋“ค๊ธฐ, ๊ทธ๋ฆฌ๊ณ  SQL ๊ธฐ๋ณธ ๋ช…๋ น์–ด(์กฐํšŒ, ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ)๊นŒ์ง€ ์ฐจ๊ทผ์ฐจ๊ทผ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. MySQL์„ ์ฒ˜์Œ ์ ‘ํ•˜๋Š” ๋ถ„๋„ ์‰ฝ๊ฒŒ ๋”ฐ๋ผํ•  ์ˆ˜ ์žˆ๋„๋ก ์นœ์ ˆํ•˜๊ฒŒ ์„ค๋ช…ํ•ด์š”!

๋ชฉ์ฐจ

1.
MySQL Workbench ์ ‘์†ํ•˜๊ธฐ [00:00:00]
2.
์Šคํ‚ค๋งˆ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์˜์—ญ) ์ƒ์„ฑํ•˜๊ธฐ [00:01:15]
3.
ํ…Œ์ด๋ธ” ์ƒ์„ฑ๊ณผ ์ปฌ๋Ÿผ(์†์„ฑ) ์„ค์ •ํ•˜๊ธฐ [00:02:33]
4.
ํ…Œ์ด๋ธ” ์ƒ์„ฑ ์‹œ ์ฃผ์š” ์˜ต์…˜๊ณผ ์ œ์•ฝ์กฐ๊ฑด ์ดํ•ดํ•˜๊ธฐ [00:07:10]
5.
SQL ํŒŒ์ผ ์ €์žฅ๊ณผ ์ฟผ๋ฆฌ ์‹คํ–‰ ๋ฐฉ๋ฒ• [00:11:16]
6.
๋ฐ์ดํ„ฐ ์กฐํšŒ(SELECT) ํ•ด๋ณด๊ธฐ [00:12:45]
7.
๋ฐ์ดํ„ฐ ์ถ”๊ฐ€(INSERT) ์‹ค์Šต [00:13:19]
8.
๋ฐ์ดํ„ฐ ์ˆ˜์ •(UPDATE)๊ณผ ์‚ญ์ œ(DELETE) ์‹ค์Šต [00:19:22]
9.
๋งˆ๋ฌด๋ฆฌ ๋ฐ ์š”์•ฝ [00:21:02]

MySQL Workbench ์ ‘์†ํ•˜๊ธฐ [00:00:00]

โ€ข
Workbench ํ”„๋กœ๊ทธ๋žจ์—์„œ ํ”Œ๋Ÿฌ์Šค(+) ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ์ƒˆ ์ปค๋„ฅ์…˜(์—ฐ๊ฒฐ)์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
โ€ข
์ปค๋„ฅ์…˜ ์ด๋ฆ„์€ ๋งˆ์Œ๋Œ€๋กœ ์ •ํ•˜๊ณ , ์œ ์ € ๋„ค์ž„์€ MySQL ๊ณ„์ • ์ด๋ฆ„์„ ์ž…๋ ฅํ•ด์š”.
โ€ข
ํŒจ์Šค์›Œ๋“œ๋Š” โ€˜์Šคํ† ์–ด ์ธ ๋ณผํŠธโ€™ ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ์ž…๋ ฅํ•˜๊ณ , โ€˜ํ…Œ์ŠคํŠธ ์ปค๋„ฅ์…˜โ€™์œผ๋กœ ์ ‘์† ํ™•์ธ!
โ€ข
์„ฑ๊ณต ๋ฉ”์‹œ์ง€๊ฐ€ ๋œจ๋ฉด ์ ‘์† ์™„๋ฃŒ!
์˜ˆ์‹œ: ์ปค๋„ฅ์…˜ ์ด๋ฆ„ โ€˜๋‚ดDBโ€™, ์œ ์ € ๋„ค์ž„ โ€˜rootโ€™ ์ž…๋ ฅ ํ›„ ์—ฐ๊ฒฐ ์„ฑ๊ณต

์Šคํ‚ค๋งˆ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์˜์—ญ) ์ƒ์„ฑํ•˜๊ธฐ [00:01:15]

โ€ข
์Šคํ‚ค๋งˆ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋…ผ๋ฆฌ์  ๊ณต๊ฐ„์ด์—์š”.
โ€ข
๋นˆ ๊ณต๊ฐ„์—์„œ ์˜ค๋ฅธ์ชฝ ํด๋ฆญ โ†’ โ€˜ํฌ๋ฆฌ์—์ดํŠธ ์Šคํ‚ค๋งˆโ€™ ์„ ํƒ โ†’ ์ด๋ฆ„ ์ž…๋ ฅ โ†’ ๋ฌธ์ž ์ธ์ฝ”๋”ฉ ์„ค์ • ๊ฐ€๋Šฅ โ†’ โ€˜์–ดํ”Œ๋ผ์ดโ€™ ํด๋ฆญ!
โ€ข
์Šคํ‚ค๋งˆ๊ฐ€ ๋งŒ๋“ค์–ด์ง€๋ฉด ๊ทธ ์•ˆ์— ํ…Œ์ด๋ธ”์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์–ด์š”.
์˜ˆ์‹œ: โ€˜mydbโ€™๋ผ๋Š” ์Šคํ‚ค๋งˆ ์ƒ์„ฑ

ํ…Œ์ด๋ธ” ์ƒ์„ฑ๊ณผ ์ปฌ๋Ÿผ(์†์„ฑ) ์„ค์ •ํ•˜๊ธฐ [00:02:33]

โ€ข
์Šคํ‚ค๋งˆ ์•ˆ์—์„œ ์˜ค๋ฅธ์ชฝ ํด๋ฆญ โ†’ โ€˜ํฌ๋ฆฌ์—์ดํŠธ ํ…Œ์ด๋ธ”โ€™ ์„ ํƒ
โ€ข
ํ…Œ์ด๋ธ” ์ด๋ฆ„ ์ž…๋ ฅ (์˜ˆ: ๊ฒŒ์‹œํŒ ํ…Œ์ด๋ธ” โ†’ โ€˜boardโ€™)
โ€ข
์ปฌ๋Ÿผ(์†์„ฑ) ์ถ”๊ฐ€: ๋ฒˆํ˜ธ, ์ œ๋ชฉ, ์ž‘์„ฑ์ž, ๋‚ด์šฉ, ๋“ฑ๋ก์ผ์ž, ์ˆ˜์ •์ผ์ž ๋“ฑ
โ€ข
๊ฐ ์ปฌ๋Ÿผ์— ๋ฐ์ดํ„ฐ ํƒ€์ž…๊ณผ ์ œ์•ฝ์กฐ๊ฑด ์„ค์ • ๊ฐ€๋Šฅ
์˜ˆ์‹œ: ๊ฒŒ์‹œํŒ ๊ธ€ ๋ฒˆํ˜ธ๋Š” ์ž๋™ ์ฆ๊ฐ€(์˜คํ† ์ธํฌ๋ฆฌ๋จผํŠธ), ๋“ฑ๋ก์ผ์ž๋Š” ํ˜„์žฌ ์‹œ๊ฐ„ ์ž๋™ ์ž…๋ ฅ

ํ…Œ์ด๋ธ” ์ƒ์„ฑ ์‹œ ์ฃผ์š” ์˜ต์…˜๊ณผ ์ œ์•ฝ์กฐ๊ฑด ์ดํ•ดํ•˜๊ธฐ [00:07:10]

โ€ข
PK(Primary Key, ๊ธฐ๋ณธํ‚ค): ๊ฐ ํ–‰์„ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๋Š” ์ปฌ๋Ÿผ (์˜ˆ: ๊ฒŒ์‹œ๊ธ€ ๋ฒˆํ˜ธ)
โ€ข
NN(Not Null): ๋นˆ ๊ฐ’(Null)์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ์กฐ๊ฑด
โ€ข
AI(Auto Increment): ์ˆซ์ž๊ฐ€ ์ž๋™์œผ๋กœ 1์”ฉ ์ฆ๊ฐ€ํ•˜๋Š” ๊ธฐ๋Šฅ (์˜ˆ: ๊ธ€ ๋ฒˆํ˜ธ ์ž๋™ ์ฆ๊ฐ€)
โ€ข
๋‚ ์งœ ์ปฌ๋Ÿผ์€ TIMESTAMP ํƒ€์ž…, ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ํ˜„์žฌ ์‹œ๊ฐ„ ํ•จ์ˆ˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
๋น„์œ : PK๋Š” ์ฃผ๋ฏผ๋“ฑ๋ก๋ฒˆํ˜ธ์ฒ˜๋Ÿผ ์œ ์ผํ•œ ๊ฐ’, NN์€ ๋ฐ˜๋“œ์‹œ ์ž…๋ ฅํ•ด์•ผ ํ•˜๋Š” ํ•„์ˆ˜ ํ•ญ๋ชฉ

SQL ํŒŒ์ผ ์ €์žฅ๊ณผ ์ฟผ๋ฆฌ ์‹คํ–‰ ๋ฐฉ๋ฒ• [00:11:16]

โ€ข
์ƒ์„ฑํ•œ ํ…Œ์ด๋ธ” ๋ช…๋ น์–ด๋ฅผ ๋ณต์‚ฌํ•ด SQL ์—๋””ํ„ฐ์— ๋ถ™์—ฌ๋„ฃ๊ธฐ
โ€ข
์ปจํŠธ๋กค+S๋กœ ํŒŒ์ผ ์ €์žฅ (์˜ˆ: board.sql)
โ€ข
์‹คํ–‰์€ ๋ฒˆ๊ฐœ ๋ชจ์–‘ ์•„์ด์ฝ˜ ํด๋ฆญ ๋˜๋Š” ์ปจํŠธ๋กค+์—”ํ„ฐ๋กœ ๊ฐ€๋Šฅ

๋ฐ์ดํ„ฐ ์กฐํšŒ(SELECT) ํ•ด๋ณด๊ธฐ [00:12:45]

โ€ข
SELECT * FROM ํ…Œ์ด๋ธ”๋ช…; ์œผ๋กœ ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒ
โ€ข
์ปค์„œ ์œ„์น˜์—์„œ ์‹คํ–‰ํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ€ ์•„๋ž˜์— ํ‘œ์‹œ๋จ

๋ฐ์ดํ„ฐ ์ถ”๊ฐ€(INSERT) ์‹ค์Šต [00:13:19]

โ€ข
INSERT INTO ํ…Œ์ด๋ธ”๋ช… (์ปฌ๋Ÿผ1, ์ปฌ๋Ÿผ2, ...) VALUES (๊ฐ’1, ๊ฐ’2, ...);
โ€ข
์˜ˆ: ๊ฒŒ์‹œํŒ์— ์ƒˆ ๊ธ€ ์ถ”๊ฐ€ํ•˜๊ธฐ
โ€ข
์‹คํ–‰ ํ›„ โ€˜1ํ–‰์ด ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹คโ€™ ๋ฉ”์‹œ์ง€ ํ™•์ธ

๋ฐ์ดํ„ฐ ์ˆ˜์ •(UPDATE)๊ณผ ์‚ญ์ œ(DELETE) ์‹ค์Šต [00:19:22]

โ€ข
UPDATE ํ…Œ์ด๋ธ”๋ช… SET ์ปฌ๋Ÿผ=๊ฐ’ WHERE ์กฐ๊ฑด; ์œผ๋กœ ๋ฐ์ดํ„ฐ ์ˆ˜์ •
โ€ข
DELETE FROM ํ…Œ์ด๋ธ”๋ช… WHERE ์กฐ๊ฑด; ์œผ๋กœ ๋ฐ์ดํ„ฐ ์‚ญ์ œ
โ€ข
์ˆ˜์ • ์‹œ ์ˆ˜์ •์ผ์ž ์ปฌ๋Ÿผ์— ํ˜„์žฌ ์‹œ๊ฐ„ ์ž๋™ ์ž…๋ ฅ ๊ฐ€๋Šฅ

๋งˆ๋ฌด๋ฆฌ ๋ฐ ์š”์•ฝ [00:21:02]

โ€ข
MySQL Workbench ์ ‘์†๋ถ€ํ„ฐ ์Šคํ‚ค๋งˆ, ํ…Œ์ด๋ธ” ์ƒ์„ฑ, SQL ๊ธฐ๋ณธ ๋ช…๋ น์–ด(์กฐํšŒ, ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ)๊นŒ์ง€ ์‹ค์Šต ์™„๋ฃŒ!
โ€ข
์ด์ œ ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…์„ ์ง์ ‘ ํ•ด๋ณผ ์ˆ˜ ์žˆ์–ด์š”.

์ •๋ฆฌ

MySQL Workbench์—์„œ ์ ‘์† โ†’ ์Šคํ‚ค๋งˆ ์ƒ์„ฑ โ†’ ํ…Œ์ด๋ธ” ๋งŒ๋“ค๊ธฐ โ†’ SQL ์ฟผ๋ฆฌ๋กœ ๋ฐ์ดํ„ฐ ์กฐํšŒ, ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ๊นŒ์ง€!
๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ์‹ค์Šต์„ ํ•จ๊ป˜ ์ตํ˜€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…์ด ํ›จ์”ฌ ์‰ฌ์›Œ์กŒ์ฃ ? ์•ž์œผ๋กœ ๋” ๋‹ค์–‘ํ•œ SQL ๋ช…๋ น์–ด๋„ ๋„์ „ํ•ด ๋ณด์„ธ์š”!
๊ถ๊ธˆํ•œ ์  ์žˆ์œผ๋ฉด ๋Œ“๊ธ€๋กœ ๋‚จ๊ฒจ์ฃผ์„ธ์š”~ ์ฆ๊ฑฐ์šด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฌํ–‰ ๋˜์‹œ๊ธธ!