: 일정한 규칙, 규약을 통해 구조화되어 저장되는 데이터의 모음
: 데이터베이스를 제어, 관리하는 통합 시스템
ex) Mysql
: 여러 개의 속성을 지닌 명사
💡 약한 엔터티 VS 강한 엔터티
약한 엔터티
: 혼자 존재하지 못하고 다른 엔터티 존재 여부에 따라 종속적인 존재
ex) 방
강한 엔터티
: 다른 엔터티가 자신의 존재 여부에 따라 종속된다면 강한 엔터티이다.
ex) 건물
: 데이터베이스에서 정보를 구분하여 저장하는 기본 단위
데이터베이스 종류
- 관계형 데이터베이스
ex) Mysql
- mysql 구조는 레코드-테이블-데이터베이스로 이루어져 있다.
- 레코드가 쌓여 테이블이 되고, 테이블이 쌓여 데이터베이스가 된다.
- Nosql 데이터베이스
ex) MongoDB
- MongoDB 구조는 도큐먼트-컬렉션-데이터베이스
: 릴레이션에서 관리하는 구체적이며 고유한 이름을 갖는 정보
: 릴레이션에 포함된 각각의 속성들이 가질 수 있는 값의 집합을 말한다.
숫자 타입
타입 | 용량(byte) | 범위(부호없음) | 범위(부호있음) |
---|---|---|---|
TINYINT | 1 | 0 ~ 255 | -128 ~ 127 |
SMALLINT | 2 | 0 ~ 655535 | -32768 ~32767 |
MEDIUMINT | 4 | 0 ~ 16777215 | - 8388608 ~ 8388607 |
INT | 8 | 0 ~ 4294967295 | -2147483648 ~ 2147483647 |
BIGINT | 0 ~ 264-1 | -263 ~ 263-1 |
날짜 타입
DATE
1000-01-01 ~ 9999-12-31
DATETIME
1000-01-01 00:00:00
~ 9999-12-31 23:59:59
TIMESTAMP
1970-01-01 00:00:00
~ 2038:01-19 03:14:07
문자 타입
CHAR
VARCHAR
TEXT
BLOB
ENUM
SET
—> ENUM, SET을 사용할 경우 공간적으로는 이점을 볼 수 있지만, 애플리케이션의 수정에 따라 데이터베이스의
ENUM, SET에서 정의한 목록을 수정해야 한다는 단점이 있다.
: 유일성과 최소성을 만족하는 키
: 중복된 값들을 제외하며 중복되지 않은 것을 자연스레 뽑다가 나오는 키
ex) 이름, 성별, 주민번호라는 속성이 있을 때, 주민번호가 자연키
: 인위적으로 생성한 키
ex) 사용자가 설정한 ID
: 다른 테이블의 기본키를 그대로 참조하는 값으로 개체와의 관계를 식별하는 데 사용한다.
: 기본키가 될 수 있는 후보들이며, 유일성과 최소성을 동시에 만족하는 키
: 후보키가 두 개 이상일 경우, 어느 하나를 기본키로 지정하고 남은 후보키를 의미한다.
: 각 레코드를 유일하게 식별할 수 있는 유일하게 식별할 수 있는 유일성을 갖춘 키