Data Definition Language
: SQL의 하위언어 중 하나. 데이터베이스의 구조를 변경하는 명령어(데이터 조작이 X)
ex. CREATE, ALTER, DROP, TRUNCATE 등
CREATE TABLE
INSERT INTO(데이터 넣기)
데이터 타입 지정하여 테이블 생성 W/constraints
- 조건이 더 많이 필요: rating, for_kids에 음수 입력 등이 가능
CHECK Constraint: 나만의 로직 만들기
원하는 조건을 추가
movie_id: surrogate primary key 생성(AUTOINCREMENT: 사용했던 id를 재사용 X)
released: 양수
overview: 글자 길이 100 이하
rating: 0~10 범위 내
for_kids: 0 / 1 둘 중 하나만 입력 가능
PRIMARY KEY: 고유 식별자
'unique & 불변'이어야
모든 행은 고유식별자 최소 1개 이상을 가져야한다.
1) Natural Primary Key(자연)
데이터와 논리적 관계를 갖는 primary key (ex. 'title')
데이터의 일부(데이터에서 파생)이면서도 unique_id로도 사용하는 데이터
데이터 자체가 고유한 값을 가지면서 & 중복이 없고 & 변하지 않아야
2) Surrogate Primary Key(대체)
데이터와 논리적 관계 없이 인위적으로 부여되는 값
ex. 'movie_id'를 인위적으로 생성
Natural Primary Key를 '고유&불변'으로 유지하는 것이 어려울 때가 많으므로,
Surrogate Primary Key를 만들어 사용할 것을 권장
'SQL' 카테고리의 다른 글
[SQLite] INDEX (1) | 2025.02.10 |
---|---|
[SQL] SUBQUERIES and CTEs (0) | 2025.02.10 |
[SQL] DATA MANIPULATION LANGUAGE (1) | 2025.02.06 |
[SQL] SQLITE (2) | 2025.02.03 |
[SQL] Intro (1) | 2025.02.03 |