728x90

SQL 11

| 2020 μ •λ³΄μ²˜λ¦¬κΈ°μ‚¬ (ν•„κΈ°) | 2. μ†Œν”„νŠΈμ›¨μ–΄ 개발 - 데이터 μž…μΆœλ ₯ κ΅¬ν˜„

34. 자료 ꡬ쑰 자료 ꡬ쑰 ν”„λ‘œκ·Έλž¨μ—μ„œ μ‚¬μš©ν•˜κΈ° μœ„ν•œ 자료λ₯Ό κΈ°μ–΅μž₯치 곡간 내에 μ €μž₯ν•˜λŠ” 방법과 μ €μž₯된 κ·Έλ£Ή 내에 μ‘΄μž¬ν•˜λŠ” 자료 κ°„μ˜ 관계, 처리 방법 등을 연ꡬ λΆ„μ„ν•˜λŠ” 것 - 자료의 ν‘œν˜„κ³Ό 그것과 κ΄€λ ¨λœ μ—°μ‚° - 일련의 μžλ£Œλ“€μ„ μ‘°μ§ν•˜κ³  κ΅¬μ‘°ν™”ν•˜λŠ” 것 - μ–΄λ– ν•œ 자료 κ΅¬μ‘°μ—μ„œλ„ ν•„μš”ν•œ λͺ¨λ“  연산듀을 μ²˜λ¦¬ν•  수 있음 - 자료 ꡬ쑰에 따라 ν”„λ‘œκ·Έλž¨ μ‹€ν–‰μ‹œκ°„μ΄ 달라짐 • 자료 ꡬ쑰의 λΆ„λ₯˜ μ„ ν˜• ꡬ쑰(Linear Structure) 1. λ°°μ—΄(Array) λ™μΌν•œ 자료의 데이터듀이 같은 크기둜 λ‚˜μ—΄λ˜μ–΄ μˆœμ„œλ₯Ό κ°–κ³  μžˆλŠ” μ§‘ν•© - 정적인 자료 ꡬ쑰둜 κΈ°μ–΅ μž₯μ†Œμ˜ μΆ”κ°€κ°€ 어렀움 - 데이터 μ‚­μ œ μ‹œ 데이터가 μ €μž₯λ˜μ–΄ 있던 κΈ°μ–΅ μž₯μ†ŒλŠ” 빈 κ³΅κ°„μœΌλ‘œ λ‚¨μ•„μžˆμ–΄ λ©”λͺ¨λ¦¬μ˜ λ‚­λΉ„ λ°œμƒ - 반볡적인 데이터 처리 μž‘μ—…μ— μ ν•©ν•œ..

[MySQL] νƒ€μž… - 숫자 νƒ€μž… (μ •μˆ˜, κ³ μ • μ†Œμˆ˜μ , 뢀동 μ†Œμˆ˜μ , λΉ„νŠΈκ°’ νƒ€μž…)

νƒ€μž…(data type) MySQLμ—μ„œ ν…Œμ΄λΈ”μ„ μ •μ˜ν•  λ•ŒλŠ” ν•„λ“œλ³„λ‘œ μ €μž₯ν•  수 μžˆλŠ” νƒ€μž…κΉŒμ§€ λͺ…μ‹œν•΄μ•Ό ν•©λ‹ˆλ‹€. MySQLμ—μ„œ μ œκ³΅ν•˜λŠ” κΈ°λ³Έ νƒ€μž…μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. 1. 숫자 νƒ€μž… 2. λ¬Έμžμ—΄ νƒ€μž… 3. λ‚ μ§œμ™€ μ‹œκ°„ νƒ€μž… 1. 숫자 νƒ€μž…(numeric types) MySQL은 SQL ν‘œμ€€μ—μ„œ μ§€μ›ν•˜λŠ” λͺ¨λ“  숫자 νƒ€μž…μ„ μ œκ³΅ν•©λ‹ˆλ‹€. MySQLμ—μ„œ μ œκ³΅ν•˜λŠ” 숫자 νƒ€μž…μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. 1. μ •μˆ˜ νƒ€μž…(integer types) 2. κ³ μ • μ†Œμˆ˜μ  νƒ€μž…(fixed-point types) 3. 뢀동 μ†Œμˆ˜μ  νƒ€μž…(floating-point types) 4. λΉ„νŠΈκ°’ νƒ€μž…(bit-value type) 1-1. μ •μˆ˜ νƒ€μž…(integer types) MySQL은 SQL ν‘œμ€€ μ •μˆ˜ νƒ€μž…μΈ INTEGER(λ˜λŠ” INT)와 ..

[MySQL] SELECT (λ ˆμ½”λ“œ 선택, 쀑볡 κ°’ 제거, μ˜€λ¦„μ°¨μˆœ, λ‚΄λ¦Όμ°¨μˆœ, 별칭, CONTACT ν•¨μˆ˜, λ¬Έμžμ—΄ κ²°ν•©)

SELECT MySQLμ—μ„œλŠ” SELECT 문을 μ‚¬μš©ν•˜μ—¬ ν…Œμ΄λΈ”μ˜ λ ˆμ½”λ“œλ₯Ό 선택할 수 μžˆμŠ΅λ‹ˆλ‹€. SELECT ν•„λ“œμ΄λ¦„ FROM ν…Œμ΄λΈ”μ΄λ¦„ [WHERE 쑰건] FROM μ ˆμ€ λ ˆμ½”λ“œλ₯Ό 선택할 ν…Œμ΄λΈ”μ˜ 이름을 λͺ…μ‹œν•©λ‹ˆλ‹€. ν•΄λ‹Ή ν…Œμ΄λΈ”μ—μ„œ μ„ νƒν•˜κ³  싢은 ν•„λ“œμ˜ 이름을 SELECT ν‚€μ›Œλ“œ λ°”λ‘œ 뒀에 λͺ…μ‹œν•˜λ©΄ λ©λ‹ˆλ‹€. μ΄λ•Œ WHERE μ ˆμ„ μ‚¬μš©ν•˜λ©΄, 선택할 λ ˆμ½”λ“œμ˜ 쑰건을 μ’€ 더 μƒμ„Ένžˆ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. ν…Œμ΄λΈ”μ˜ λͺ¨λ“  ν•„λ“œ 선택 SELECT λ¬Έκ³Ό ν•¨κ»˜ λ³„ν‘œ(*) 기호λ₯Ό μ‚¬μš©ν•˜λ©΄, ν•΄λ‹Ή ν…Œμ΄λΈ”μ˜ λͺ¨λ“  ν•„λ“œλ₯Ό 선택할 수 μžˆμŠ΅λ‹ˆλ‹€. SELECT * FROM ν…Œμ΄λΈ”μ΄λ¦„ 이 방식은 ν•΄λ‹Ή ν…Œμ΄λΈ”μ˜ 'λͺ¨λ“  ν•„λ“œ'λ₯Ό 선택해야 ν•  κ²½μš°μ— μœ μš©ν•˜κ²Œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. λ‹€μŒ μ˜ˆμ œλŠ” Reservation ν…Œμ΄λΈ”μ˜ λͺ¨λ“  ν•„λ“œλ₯Ό μ„ νƒν•˜..

[MySQL] DELETE (λ ˆμ½”λ“œ μ‚­μ œ, 제거, ν…Œμ΄λΈ” 전체 데이터 μ‚­μ œ)

DELETE MySQLμ—μ„œλŠ” DELETE 문을 μ‚¬μš©ν•˜μ—¬ ν…Œμ΄λΈ”μ˜ λ ˆμ½”λ“œλ₯Ό μ‚­μ œν•  수 μžˆμŠ΅λ‹ˆλ‹€. DELETE FROM ν…Œμ΄λΈ”μ΄λ¦„ WHERE ν•„λ“œμ΄λ¦„=데이터값 DELETE 문은 ν•΄λ‹Ή ν…Œμ΄λΈ”μ—μ„œ WHERE 절의 쑰건을 λ§Œμ‘±ν•˜λŠ” λ ˆμ½”λ“œλ§Œμ„ μ‚­μ œν•©λ‹ˆλ‹€. 즉, ν…Œμ΄λΈ”μ—μ„œ λͺ…μ‹œλœ ν•„λ“œμ™€, κ·Έ 값이 μΌμΉ˜ν•˜λŠ” λ ˆμ½”λ“œλ§Œμ„ μ‚­μ œν•΄ μ€λ‹ˆλ‹€. λ§Œμ•½ WHERE μ ˆμ„ μƒλž΅ν•˜λ©΄, ν•΄λ‹Ή ν…Œμ΄λΈ”μ— μ €μž₯된 λͺ¨λ“  데이터가 μ‚­μ œλ©λ‹ˆλ‹€. DELETE FROM ν…Œμ΄λΈ”μ΄λ¦„; μ΄λ•Œ ν…Œμ΄λΈ”μ— μ €μž₯된 λͺ¨λ“  데이터가 μ‚­μ œλ˜λ”λΌλ„ ν…Œμ΄λΈ”μ€ μ—¬μ „νžˆ λ‚¨μ•„μžˆκ²Œ λ©λ‹ˆλ‹€. ν•΄λ‹Ή ν…Œμ΄λΈ”κΉŒμ§€ μ‚­μ œν•˜κ³  싢을 λ•ŒλŠ” DROP TABLE 문을 μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€. λ‹€μŒ μ˜ˆμ œλŠ” Reservation ν…Œμ΄λΈ”μ—μ„œ Name ν•„λ“œμ˜ 값이 '홍길동'인 λͺ¨λ“  λ ˆμ½”λ“œλ₯Ό μ‚­μ œν•˜λŠ” μ˜ˆμ œμž…λ‹ˆλ‹€. ..

[MySQL] UPDATE (λ ˆμ½”λ“œ κ°’ λ³€κ²½, μˆ˜μ •, μ—…λ°μ΄νŠΈ)

UPDATE MySQLμ—μ„œλŠ” UPDATE 문을 μ‚¬μš©ν•˜μ—¬ λ ˆμ½”λ“œμ˜ λ‚΄μš©μ„ μˆ˜μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. UPDATE ν…Œμ΄λΈ”μ΄λ¦„ SET ν•„λ“œμ΄λ¦„1=데이터값1, ν•„λ“œμ΄λ¦„2=데이터값2, ... WHERE ν•„λ“œμ΄λ¦„=데이터값 UPDATE 문은 ν•΄λ‹Ή ν…Œμ΄λΈ”μ—μ„œ WHERE 절의 쑰건을 λ§Œμ‘±ν•˜λŠ” λ ˆμ½”λ“œμ˜ κ°’λ§Œμ„ μˆ˜μ •ν•©λ‹ˆλ‹€. λ‹€μŒ μ˜ˆμ œλŠ” Reservation ν…Œμ΄λΈ”μ—μ„œ Name ν•„λ“œμ˜ 값이 '홍길동'인 λͺ¨λ“  λ ˆμ½”λ“œμ˜ RoomNum 값을 2002둜 λ³€κ²½ν•˜λŠ” μ˜ˆμ œμž…λ‹ˆλ‹€. UPDATE Reservation SET RoomNum = 2002 WHERE Name = '홍길동'; μ‹€ν–‰ κ²°κ³Ό MySQL μˆ˜μ—… μ˜ˆμ œμ—μ„œ μ‚¬μš©λ˜λŠ” Reservation ν…Œμ΄λΈ”κ³Ό Customer ν…Œμ΄λΈ”μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. ν…Œμ΄λΈ” 보기 => λ§Œμ•½ WHERE μ ˆμ„ μƒλž΅ν•˜..

[MySQL] DROP (λ°μ΄ν„°λ² μ΄μŠ€, ν…Œμ΄λΈ” μ‚­μ œ, TRUNCATE TABLE, IF EXISTS)

DROP DROP 문을 μ‚¬μš©ν•˜μ—¬ λ°μ΄ν„°λ² μ΄μŠ€μ™€ ν…Œμ΄λΈ”μ„ μ‚­μ œν•  수 μžˆμŠ΅λ‹ˆλ‹€. 1. DROP DATABASE 2. DROP TABLE λ°μ΄ν„°λ² μ΄μŠ€ μ‚­μ œ DROP DATABASE 문은 ν•΄λ‹Ή λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ‚­μ œν•΄ μ€λ‹ˆλ‹€. DROP DATABASE λ°μ΄ν„°λ² μ΄μŠ€μ΄λ¦„ λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ‚­μ œν•˜λ©΄ ν•΄λ‹Ή λ°μ΄ν„°λ² μ΄μŠ€μ˜ λͺ¨λ“  ν…Œμ΄λΈ”κ³Ό 데이터도 λ‹€ 같이 μ‚­μ œλ˜λ―€λ‘œ μ£Όμ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€. λ‹€μŒ μ˜ˆμ œλŠ” Hotel λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ‚­μ œν•˜λŠ” μ˜ˆμ œμž…λ‹ˆλ‹€. DROP DATABASE Hotel; ν…Œμ΄λΈ” μ‚­μ œ DROP TABLE 문은 ν•΄λ‹Ή ν…Œμ΄λΈ”μ„ μ‚­μ œν•΄ μ€λ‹ˆλ‹€. DROP TABLE ν…Œμ΄λΈ”μ΄λ¦„ ν…Œμ΄λΈ”μ„ μ‚­μ œν•˜λ©΄ ν•΄λ‹Ή ν…Œμ΄λΈ”μ˜ λͺ¨λ“  데이터도 λ‹€ 같이 μ‚­μ œλ˜λ―€λ‘œ μ£Όμ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€. λ§Œμ•½ ν…Œμ΄λΈ” μžμ²΄κ°€ μ•„λ‹Œ ν…Œμ΄λΈ”μ˜ λ°μ΄ν„°λ§Œμ„ μ§€μš°κ³  싢을 λ•ŒλŠ” TRUNC..

[MySQL] ALTER (λ°μ΄ν„°λ² μ΄μŠ€ μˆ˜μ •, ν…Œμ΄λΈ” μˆ˜μ •, ν•„λ“œ μΆ”κ°€ 및 μ‚­μ œ, ν•„λ“œ νƒ€μž… λ³€κ²½)

ALTER ALTER 문을 μ‚¬μš©ν•˜μ—¬ λ°μ΄ν„°λ² μ΄μŠ€μ™€ ν…Œμ΄λΈ”μ˜ λ‚΄μš©μ„ μˆ˜μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 1. ALTER DATABASE 2. ALTER TABLE λ°μ΄ν„°λ² μ΄μŠ€ μˆ˜μ • ALTER DATABASE 문은 λ°μ΄ν„°λ² μ΄μŠ€μ˜ 전체적인 νŠΉμ„±μ„ μˆ˜μ •ν•  수 있게 ν•΄μ€λ‹ˆλ‹€. λ˜ν•œ, λ°μ΄ν„°λ² μ΄μŠ€μ˜ 문자 μ§‘ν•©μ΄λ‚˜ μ½œλ ˆμ΄μ…˜μ„ λ³€κ²½ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ λ°μ΄ν„°λ² μ΄μŠ€μ˜ νŠΉμ„±μ€ λ°μ΄ν„°λ² μ΄μŠ€ λ””λ ‰ν„°λ¦¬μ˜ db.opt νŒŒμΌμ— μ €μž₯λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. λ‹€μŒ μ˜ˆμ œλŠ” Hotel λ°μ΄ν„°λ² μ΄μŠ€μ˜ 문자 μ§‘ν•©κ³Ό μ½œλ ˆμ΄μ…˜μ„ λ³€κ²½ν•˜λŠ” μ˜ˆμ œμž…λ‹ˆλ‹€. ALTER DATABASE Hotel CHARACTER SET=euckr_bin COLLATE=euckr_korean_ci; 자주 μ‚¬μš©λ˜λŠ” λŒ€ν‘œμ μΈ CHARACTER SET은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. 1. utf8 : UTF..

[MySQL] CREATE (λ°μ΄ν„°λ² μ΄μŠ€ 생성, ν…Œμ΄λΈ” 생성, μ œμ•½ 쑰건)

CREATE CREATE 문을 μ‚¬μš©ν•˜μ—¬ λ°μ΄ν„°λ² μ΄μŠ€μ™€ ν…Œμ΄λΈ”μ„ λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€. 1. CREATE DATABASE 2. CREATE TABLE λ°μ΄ν„°λ² μ΄μŠ€ 생성 μƒˆλ‘œμš΄ λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€. CREATE DATABASE DB_Name μƒμ„±λœ λ°μ΄ν„°λ² μ΄μŠ€ λͺ©λ‘μ€ SHOW DATABASES ꡬ문을 톡해 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. SHOW DATABASES; λ°μ΄ν„°λ² μ΄μŠ€μ˜ 선택 λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μƒμ„±ν•œ 후에, ν•΄λ‹Ή λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ‚¬μš©ν•˜κΈ° μœ„ν•΄μ„œλŠ” μš°μ„  λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό 선택해야 ν•©λ‹ˆλ‹€. MySQLμ—μ„œλŠ” USE 문을 μ‚¬μš©ν•˜μ—¬ λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό 선택할 수 μžˆμŠ΅λ‹ˆλ‹€. USE DB_Name; Unix ν™˜κ²½μ˜ MySQLμ—μ„œλŠ” λ°μ΄ν„°λ² μ΄μŠ€ μ΄λ¦„μ˜ λŒ€μ†Œλ¬Έμžλ₯Ό κ΅¬λΆ„ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ Windows ν™˜κ²½μ˜ MySQLμ—μ„œλŠ” λ°μ΄ν„°λ² μ΄μŠ€μ˜ 이..

λ°˜μ‘ν˜•