SQL
SQLμ΄λ
SQLμ Structured Query Language(ꡬ쑰μ μ§μ μΈμ΄)μ μ€μλ§λ‘ RDBMS(κ΄κ³ν λ°μ΄ν°λ² μ΄μ€ μμ€ν )μ μ μ΄νλ μ»΄ν¨ν° μΈμ΄λ₯Ό λ»ν©λλ€. μ ν¬κ° μ μλ νμ΄μ¬, μλ°μ κ°μ νλ‘κ·Έλλ° μΈμ΄λ³΄λ€λ κ·Έ λͺ λ Ήλ¬Έμ΄ μ§§κ³ κ°κ²°ν©λλ€.
RDBMSμλ μ¬λ¬ κ°μ§ μ’ λ₯κ° μμ΅λλ€.
Oracle DB : κ°μ₯ μ€λλμκ³ μ λ’°λκ° λμ΅λλ€. λκ·λͺ¨ μμ€ν μμ λ§μ΄ μ°μ λλ€.
MySQL : μ€ν μμ€λ‘ μ ν¬λ€μ΄ μ΄μ©ν RDBMSμ λλ€.
Maria DB : MySQL 5.5λ₯Ό κΈ°λ°μΌλ‘ λ§λ€μ΄μ Έ MySQLκ³Ό νΈνμ±μ΄ λ°μ΄λ©λλ€.
PostgreSQL : μ€ν μμ€ ORDBMS(κ°μ²΄ν λ°μ΄ν°λ² μ΄μ€ κ΄λ¦¬ μμ€ν ) μ λλ€.
1. RDB ꡬ쑰
κ΄κ³ν λ°μ΄ν°λ² μ΄μ€λ ν€(key)μ κ°(value)μ κ΄κ³λ₯Ό 2μ°¨μ ν μ΄λΈμ νμμΌλ‘ λνλΈ λ°μ΄ν°λ² μ΄μ€λ‘, νλμ λ°μ΄ν°λ² μ΄μ€ μμλ μ¬λ¬κ°μ ν μ΄λΈμ΄ μ‘΄μ¬ν μ μμ΅λλ€.
ν μ΄λΈμ ν(row)μ μ΄(column)μΌλ‘ μ΄λ£¨μ΄μ Έ μμ΅λλ€. ν μ΄λΈμ κ° νμ λ μ½λ(record)λΌκ³ λΆλ¦ λλ€. κ°κ°μ λ°μ΄ν° ν 건μ μλ―Έν©λλ€. ν μ΄λΈμ μ΄(column)μ λ°μ΄ν°νλ μμ μ΄μ΄λΌκ³ μκ°νλ©΄ λ©λλ€.
[λ°μ΄ν°λ² μ΄μ€ - ν μ΄λΈ - μ΄, ν]
2. SQL λͺ
λ Ήμ΄ λΆλ₯
DDL : λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§μ μ€λͺ μ μ μνλ μΈμ΄μ λλ€. λ°μ΄ν°λ² μ΄μ€μ ν μ΄λΈμ μμ±νλ μμ μ μ°μ λλ€.
DML : λ°μ΄ν° κ²μ, μ½μ , λ³κ²½, μμ λ₯Ό μννλ μΈμ΄μ λλ€.
DCL : λ°μ΄ν°μ μ κ·Όν μ μλ κΆνμ κ΄λ¦¬νλ μΈμ΄μ λλ€.
TCL : Transactionμ λ€λ£¨λ μΈμ΄μ λλ€.
3. λ°μ΄ν° νμ
κ°μ₯ μμ£Ό μ°μ΄λ λ°μ΄ν° 4κ°λ§μ μ 리νμ΅λλ€.
VARCHAR() : μ΅λ 255μμ λ¬Έμλ₯Ό μ μ₯ν©λλ€.
INT() : νμ€ Integer κ°
DATE : λ μ§. βYYYY-MM-DDβ νμ
TIME : μκ°. βHH:MM:SSβ νμ
4. SQL μ€μ΅
Database μμ±
CREATE DATBASE λ°μ΄ν°λ² μ΄μ€λͺ
;Database μ μ
USE λ°μ΄ν°λ² μ΄μ€λͺ
;Database μμ
DROP DATABASE λ°μ΄ν°λ² μ΄μ€λͺ
;Table μμ±
CREATE TABLE Table1(
id INT(20) NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
detail TEXT NULL
);
# NOT NULL : νμ μ
λ ₯ μ¬ν. 곡백 νμ© νμ§ μκ² λ€λ μ΅μ
# NULL : 곡백 νμ© μ΅μ
# AUTO_INCREMENT : μλ£νμ΄ INT(μ μν)μΌλ μ μ© κ°λ₯, λ°μ΄ν°κ° λμ΄λ λλ§λ€ 1μ© μλ μ¦κ°
# PRIMARY KEY(컬λΌλͺ
) : μ€λ³΅ κ° νμ© μνλ μ»¬λΌ 1κ° μ ν. ν
μ΄λΈμ μ£Όμ μΆμ΄ λλ 컬λΌ/Table λ°μ΄ν° μΆκ°
INSERT INTO ν
μ΄λΈλͺ
(컬λΌ1,컬λΌ2 ...) VALUES (κ°1, κ°2 ...)Table λ°μ΄ν° νμΈ
# λͺ¨λ λ°μ΄ν° νμΈ
SELECT * FROM ν
μ΄λΈλͺ
;
# ν΄λΉνλ μ»¬λΌ λ°μ΄ν°λ§ νμΈ
SELECT (컬λΌλͺ
) FROM ν
μ΄λΈλͺ
;Table λ°μ΄ν° μ λ ¬ (row μ λ ¬)
# DESC : λ΄λ¦Όμ°¨μ μ λ ¬
SELECT * FROM ν
μ΄λΈλͺ
ORDER BY 컬λΌλͺ
DESC;
# ASC : μ€λ¦μ°¨μ μ λ ¬
SELECT * FROM ν
μ΄λΈλͺ
ORDER BY 컬λΌλͺ
ASC;Table λ°μ΄ν° μμ
UPDATE ν
μ΄λΈλͺ
SET detail='λ΄μ©' WHERE id=1;Table μ΄λ¦ λ³κ²½
RENAME TABLE ν
μ΄λΈλͺ
TO μλ‘μ΄ν
μ΄λΈλͺ
;Table λ°μ΄ν° μμ
DELETE FROM ν
μ΄λΈλͺ
WHERE id=1;Table μμ
DROP TABLE ν
μ΄λΈλͺ
;Last updated