SQL, Structured Query Language
- 관계형 데이터베이스(RDBMS)에 저장된 데이터를 관리할 수 있도록 설계된 프로그래밍 언어
- 관계형 데이터베이스(RDBMS): 한 개 혹은 그 이상의 테이블의 정보로 구성된 데이터베이스
Create
CREATE TABLE celebs (
id INTEGER,
name TEXT,
age INTEGER
);
Insert
- insert data into a table(테이블에 행 삽입)
INSERT INTO celebs (id, name, age)
VALUES (1, 'Justin Bieber', 22);
Select
- fetch data from a database(데이터 추출)
//SELECT ${column_name} FROM ${table};
SELECT name FROM celebs;
SELECT * FROM celebs;
Alter
- adds a new column to a table(열 추가)
// ALTER TABLE ${table}
// ADD COLUMN ${column_name} ${DataType};
**ALTER TABLE** celebs
**ADD COLUMN** twitter_handle TEXT;
Update
- edits a row in a table(행 추가)
UPDATE celebs
SET twitter_handle = '@taylorswift13'
WHERE id = 4;
Delete
- delete one or more rows from a table(행 삭제)
DELETE FROM celebs
WHERE twitter_handle IS NULL;
Constraints
- specifying data type(데이터 타입 특정)
CREATE TABLE celebs (
id INTEGER PRIMARY KEY,
name TEXT UNIQUE,
date_of_birth TEXT NOT NULL,
date_of_death TEXT DEFAULT 'Not Applicable'
);
//PRIMARY KEY: 키 값(중복 X, NULL값 X)
//UNIQUE: 행마다 다른 값(중복 X, NULL값 O)
//NOT NULL: 무조건 값이 포함되어야 함
//DEFAULT: 기본값