๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ’ป Deep Wide Programming/Mysql & Database

[์ƒํ™œ์ฝ”๋”ฉ] MySQL 7๊ฐ•, 8.1๊ฐ•, 8.2๊ฐ•, 9๊ฐ• (Table์˜ ๊ตฌ์กฐ์™€ ์ƒ์„ฑ)

728x90
๋ฐ˜์‘ํ˜•

MySQL์˜ ๊ตฌ์กฐ

๋ฐ์ดํ„ฐ๋ฅผ ์ง„ํ–‰ํ•˜๋Š” ์ตœ์ข…์ ์ธ ์ง€์ ์€ 'ํ‘œ(Table)'๋‹ค. ์ •๋ณด๊ฐ€ ํ‘œ์— ์ €์žฅ์ด ๋œ๋‹ค. ํ‘œ๊ฐ€ ๋งŽ์•„์ง€๋ฉด, ๋งŽ์•„์ง„ ํ‘œ๋“ค์„ ์ž˜ ์ •๋ฆฌ์ •๋ˆํ•  ํ•„์š”๊ฐ€ ํ•„์š”ํ•ด์ง„๋‹ค. ํŒŒ์ผ์—์„œ ๋””๋ ‰ํ† ๋ฆฌ ๊ฐ™์€ ๊ฒƒ๋“ค์ด ํ•„์š”ํ•ด์ง€๋Š” ๊ฒƒ๊ณผ ์œ ์‚ฌ!

์—ฐ๊ด€๋œ ํ‘œ๋“ค์„ ๊ทธ๋ฃนํ•‘ํ•ด์„œ, ์—ฐ๊ด€๋˜์ง€ ์•Š์€ ํ‘œ๋“ค๊ณผ ๋ถ„๋ฆฌํ•˜๋Š” ํŒŒ์ผ์˜ ํด๋” ๊ฐ™์€ ๊ฐœ๋…์ด ์žˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ‘œ๋“ค์„ ๊ทธ๋ฃนํ•‘ ํ•œ๊ฒƒ์„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(Database)๋ผ๊ณ  ํ•œ๋‹ค. ์˜๋ฏธ๊ฐ€ ์ข€ ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์Šคํ‚ค๋งˆ๋ผ๋Š” ํ‘œํ˜„์œผ๋กœ ์“ด๋‹ค. 

 

์Šคํ‚ค๋งˆ(๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค)= ์—ฐ๊ด€๋œ ๋ฐ์ดํ„ฐ๋“ค์„ ๊ทธ๋ฃนํ•‘ํ•œ ๊ฒƒ
*์Šคํ‚ค๋งˆ ์•ˆ์—๋Š” ํ‘œ๋“ค์ด ์žˆ๋‹ค~*

 

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์š”์†Œ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์ธ mysql์„ ์šฐ๋ฆฌ๋Š” ์„ค์น˜ํ•œ ๊ฒƒ์ด๊ณ , ๊ทธ ํ”„๋กœ๊ทธ๋žจ์ด ๊ฐ–๊ณ  ์žˆ๋Š” ๊ธฐ๋Šฅ์„ฑ์„ ์ด์šฉํ•ด์„œ ๋ฐ์ดํ„ฐ

์™€ ๊ด€๋ จ๋œ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ž‘์—…์„ ํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด๋‹ค. 

 

 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํšจ์šฉ 1) ๋ณด์•ˆ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ž์ฒด์ ์ธ ๋ณด์•ˆ์ฒด๊ณ„๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ์•ˆ์ „ํ•˜๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ด€ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ๋˜, ๊ถŒํ•œ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด, mysql์— ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์„ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ์‚ฌ๋žŒ๋งˆ๋‹ค table/์Šคํ‚ค๋งˆ ๋ณ„  ์ฝ๊ธฐ/์ˆ˜์ • ๋“ฑ ๋ถ€๋ถ„์ ์ธ ๊ถŒํ•œ์„ ์ค„ ์ˆ˜๊ฐ€ ์žˆ๋‹ค. 

 

root= ๊ด€๋ฆฌ์ž๋ฅผ ์˜๋ฏธํ•˜๊ณ , ๋ชจ๋“  ๊ถŒํ•œ์ด ์—ด๋ ค์žˆ๋‹ค.
์ค‘์š”ํ•œ ์‹œ์Šคํ…œ์ด๋ผ๋Š” ๋ณ„๋„์˜ ์‚ฌ์šฉ์ž๋ฅผ ๋งŒ๋“ค์–ด์„œ ๊ทธ๊ฑธ๋กœ ์ด์šฉํ•˜๋‹ค๊ฐ€, ์ค‘์š”ํ•œ ์‚ฌ์•ˆ์—๋งŒ root๋ฅผ ๋“ค์–ด๊ฐ€๋Š” ๋ฐฉ์‹์„ ์ถ”์ฒœ. 

 

mysql -uroot ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์˜ ๋‹ด์žฅ์„ ๋„˜์—ˆ๋‹ค. ๋‚˜๋Š” Codeanywhere์ด๊ธฐ ๋•Œ๋ฌธ์— ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•˜์ง€ ์•Š์•„์„œ ๊ทธ๋ƒฅ -uroot๋กœ ์ž…์žฅํ–ˆ๋‹ค. ์•„๋‹ˆ ๊ทผ๋ฐ..๊ทธ๋ ‡๋‹ค๋ฉด.......์ž ๊น ์ „ ํฌ์ŠคํŒ…์—์„œ ๊ทธ๋ ‡๊ฒŒ ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐพ์œผ๋ ค๊ณ  ๋‚œ๋ฆฌ ์ณค๋Š”๋ฐ ๊ทธ๋ƒฅ ์ž…์žฅ ๊ฐ€๋Šฅํ–ˆ๋˜ ๊ฑฐ ์•„๋‹๊นŒ? ํ•ณ

ํ˜น์‹œ๋‚˜ ํ•ด์„œ cmd๋ฅผ ํ‚ค๊ณ  ๋“ค์–ด๊ฐ”๋”๋‹ˆ .. ์•„๋‹ˆ๋‚˜ ๋‹ค๋ฅผ๊นŒ ๋น„๋ฒˆ ์—†์ด DB์„œ๋ฒ„ ์ž…์žฅ์ด ์™„๋ฃŒ๋œ๊ฑฐ์˜€๋‹ค! ํ•˜ํ•˜ 

 

๊ทธ๋ƒฅ ๋˜๋Š” ๊ฑด๋ฐ ์ด๊ฒƒ๋•œ์— ์‹œ๊ฐ„์„ ์–ผ๋งˆ๋‚˜ ์“ด๊ฑฐ๋‹ˆ...

 


๋ฐ์ดํƒ€๋ฒ ์ด์Šค(์Šคํ‚ค๋งˆ) ์ƒ์„ฑํ•˜๊ธฐ

๋’ค์— menagerie๋Š” ์ƒ์„ฑํ•˜๊ณ  ์‹ถ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ด๋ฆ„์„ ์˜๋ฏธํ•œ๋‹ค! ๊ทธ๋ฆฌ๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ž˜ ์ƒ์„ฑ๋˜์—ˆ๋Š”์ง€, ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด "how to show database list in mysql"๋ผ๊ณ  ๊ตฌ๊ธ€๋ง์„ ํ•ด์„œ ํ™•์ธํ•ด๋ณด์ž. 

 

 

 

์ด์ œ ์ € ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(์Šคํ‚ค๋งˆ) ์•ˆ์— ํ‘œ๋ฅผ ๋งŒ๋“ค๊ฑด๋ฐ, ์ด์ œ OPENTUTORIALS๋ผ๋Š” ์ด ์Šคํ‚ค๋งˆ๋ฅผ ์“ฐ๊ฒ ๋‹ค๋ผ๊ณ  ์•Œ๋ ค์ค˜์•ผ ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ด์ œ๋ถ€ํ„ฐ ์‹คํ–‰๋˜๋Š” ๋ช…๋ น์ด ํ•ด๋‹น ์Šคํ‚ค๋งˆ ์•ˆ์— ์žˆ๋Š” ํ‘œ๋“ค์—๊ฒŒ ํ•ด๋‹น๋˜๊ฒŒ ๋˜๋Š” ๊ฑฐ๋‹ค. ์ด์ œ ์—ฌ๊ธฐ๊นŒ์ง€ ํ‘œ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ์ค€๋น„๊ฐ€ ๋๋‚œ ๊ฒƒ์ด๋‹ค!

 

์ง€๊ธˆ๊นŒ์ง€ ๋ฐ”๊นฅ ๋„ค๋ชจ ์ƒ์ž ๋‘ ๋‹จ๊ณ„๋ฅผ ๋„˜์–ด์™”๋‹ค!

๊ฟ€ํŒ! ์œ—์ชฝ ํ™”์‚ดํ‘œ ๋ˆ„๋ฅด๋ฉด ์•ž์ค„์— ์ผ๋˜ ์ฝ”๋“œ ๊ทธ๋Œ€๋กœ ๋ณต๋ถ™์ด ๋œ๋‹ค!

SQL๊ณผ ํ…Œ์ด๋ธ”์˜ ๊ตฌ์กฐ

1) ๋ณธ๊ฒฉ์ ์œผ๋กœ SQL์ด๋ผ๋Š” ์ปดํ“จํ„ฐ ์–ธ์–ด๋ฅผ ๋ฐฐ์šฐ๊ฒŒ ๋  ๊ฒƒ์ด๋‹ค.

SQL= Stuctured Query Language

structure  = ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ํ‘œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ •๋ฆฌ์ •๋ˆ = ๊ตฌ์กฐํ™” ๋˜์—ˆ๋‹ค
Query = ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์–ด์ค˜, ์ฝ์–ด์ค˜, ์ˆ˜์ •ํ•ด์ค˜, ์‚ญ์ œํ•ด์ค˜ ๋“ฑ์˜ ์š”์ฒญ/์งˆ์˜ํ•œ๋‹ค๋ผ๋Š” ์˜๋ฏธ์—์„œ ์“ฐ์ธ๋‹ค. 
Language = ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ณ , ์šฐ๋ฆฌ๋„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ณตํ†ต์˜ ์•ฝ์†์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์—๊ฒŒ ์š”์ฒญ์„ ํ•ด์•ผ ์•Œ์•„๋“ค์„ ์ˆ˜ ์žˆ๋Š” ์–ธ์–ด๋ฅผ ์˜๋ฏธํ•œ๋‹ค. 

๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ผ๋Š” ์นดํ…Œ๊ณ ๋ฆฌ์— ์†ํ•˜๋Š” ์ œํ’ˆ๋“ค์ด ๊ณตํ†ต์ ์œผ๋กœ DB์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์ด์šฉํ•˜๋Š” ํ‘œ์ค€ํ™”๊ฐ€ ๋˜์–ด์žˆ๋Š” ์–ธ์–ด๋‹ค. ๋”ฐ๋ผ์„œ ๋‹ค์ˆ˜์˜ DB ์‹œ์Šคํ…œ์ด SQL์„ ์ด์šฉํ•ด์„œ ์›€์ง์ด๊ณ  ์žˆ๋‹ค! ์ฆ‰, SQL์€ ์‰ฝ๊ณ  ์ค‘์š”ํ•œ ์ปดํ“จํ„ฐ ์–ธ์–ด๋‹ค. 

 

2) ํ‘œ๋ฅผ ๋ณธ๊ฒฉ์ ์œผ๋กœ ๋‹ค๋ค„๋ณผ ๊ฒƒ์ด๋‹ค. 

table, ํ‘œ

์ˆ˜ํ‰ _ row, record,ํ–‰  (๋ฐ์ดํ„ฐ์˜ ํ•˜๋‚˜ํ•˜๋‚˜๋ฅผ ์˜๋ฏธ, ex. 2ํ–‰ = ๋ฐ์ดํ„ฐ๊ฐ€ ๋‘ ๊ฑด ์žˆ๋‹ค๋Š” ๊ฒƒ)

์ˆ˜์ง _ column, ์—ด (๋ฐ์ดํ„ฐ์˜ ๊ตฌ์กฐ, type์„ ์˜๋ฏธ)


SQL ํ…Œ์ด๋ธ”์˜ ์ƒ์„ฑ

์ด ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ์˜ ํ‘œ๋ฅผ SQL๋กœ ๋งŒ๋“ค์–ด๋ณด๋Š” ๊ฒƒ์ด๋‹ค. 

 

์ฝ”๋“œ๋Š” ์‹ฌํ”Œํ•˜์ง€๋งŒ, ํ•˜๋‚˜์”ฉ ์‚ดํŽด๋ณด์ž. 

 

create table in mysql cheat sheet

๊ฒ€์ƒ‰ํ•ด์„œ ํŒŒ์•…ํ•ด๋ณด์ž.

 

์—‘์…€๊ณผ MySQL์˜ ๊ฒฐ์ •์ ์ธ ์ฐจ์ด๊ฐ€ ๋˜ ์žˆ๋‹ค.

์—‘์…€ ์นธ ์•ˆ์—๋Š” ์–ด๋–ค ์ข…๋ฅ˜์˜ ์ •๋ณด๋“  ๋„ฃ์–ด๋„ ์ƒ๊ด€์ด ์—†์ง€๋งŒ, MySQL์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์„ ๋•Œ ๋ฐ˜๋“œ์‹œ ์ˆซ์ž๋กœ ๋“ค์–ด์™€์•ผ ํ•œ๋‹ค/๋‚ ์งœ๋กœ ๋“ค์–ด์™€์•ผ ํ•œ๋‹ค ๋“ฑ ๊ฐ•๋ ฅํžˆ ๊ทœ์ œ& ํ•ด๋‹น ๋ฐ์ดํ„ฐtype์ด ์•„๋‹ˆ๋ฉด error๋ฅผ ์†ก์ถœํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

 

https://dev.mysql.com/doc/refman/8.0/en/string-type-syntax.html

 

MySQL :: MySQL 8.0 Reference Manual :: 11.3.1 String Data Type Syntax

11.3.1 String Data Type Syntax The string data types are CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM, and SET. In some cases, MySQL may change a string column to a type different from that given in a CREATE TABLE or ALTER TABLE statement. See Secti

dev.mysql.com

๊ณ„์† ๊ตฌ๊ธ€๋งํ•˜๋ฉด์„œ ์ต์ˆ™ํ•ด์ง€์ž!

728x90
๋ฐ˜์‘ํ˜•