본 자료는 Elice 플랫폼의 자료를 사용하여 정리하였습니다.
제약조건
정의
- 테이블에 잘못된 데이터가 입력되는 것을 방지하기 위한 규칙
- 제약조건을 통해 무결성을 지킬 수 있다.
NOT NULL
- 널(NULL) 값 비허용
- 데이터를 입력하지 않으면 에러가 발생
- 아무것도 명시하지 않는 경우 기본값은 널 값 허용
UNIQUE
- 중복 값 비허용
- 똑같은 값이 있으면 에러가 발생
- NULL 값은 허용
DEFAULT
CHECK
제약조건 정의
CONSTRAINT 제약조건이름 제약조건(적용할 속성);
제약조건 추가
ALTER TABLE 테이블명 ADD CONSTRAINT 제약조건이름 제약조건(적용할 속성);
제약조건 삭제
ALTER TABLE 테이블명 DROP CONSTRAINT 제약조건이름;
키(key)
키(key)
- 조건에 만족하는 튜플을 찾거나, 정렬할 때 기준이 되는 속성
- 기본키, 외래키, 후보키, 대체키, 슈퍼키 등이 있다.
기본키
- 서로 다른 튜플을 유일하게 식별할 수 있는 기준이 되는 속성
- 중복 X, 널값 X
- 테이블 당 1개만 설정
외래키
- 다른 테이블의 기본키를 참조하는 속성으로 테이블의 관계를 정의
- 참조되는 테이블의 기본키에 없는 값은 지정할 수 없다.
기본키/외래키 지정
PRIMARY KEY /
FOREIGN KEY (참조할 속성) REFERENCES 참조되는 테이블(참조되는 속성)
그외 키
- 후보키 : 기본키가 될 수 있는 키로 유일성과 최소성을 만족(기본키 ⊂ 후보키)
- 대체키 : 후보키 중에 기본키가 아닌 키(대체키 ⊂ 후보키)
- 슈퍼키 : 유일성은 만족하지만 최소성은 만족하지 않는 키
무결성 제약조건
- 개체 무결성 : 기본키는 널 값과 중복 값을 가질 수 없다.
- 참조 무결성 : 외래키는 널이거나 참조되는 기본키 값과 동일해야한다.
데이터 모델링
정의
- 현실 세계에 존재하는 데이터를 데이터베이스화하는 과정
데이터 모델과 구성요소
데이터 모델
- 현실세계의 데이터를 단순화, 추상화하여 표현한 모델
구성요소
- 개체(Entity)
- 속성(Attribute)
- 관계(Relationship)
과정
- 개념적 설계 : 현실세계를 추상적 개념으로 표현하는 과정
- 논리적 설계 : DBMS가 처리할 수 있는 데이터구조(스키마)를 설계
- 물리적 설계 : DBMS에 테이블을 저장할 구조를 설계
ER다이어그램(Peter Chen)
정의
- ERD(Entity-Relationship Diagram) 개체-관계 다이어그램
- 현실 세계의 데이터를 개체와 관계형태의 다이어그램으로 나타내는 것
Peter Chen

관계 추가하기

ER다이어그램(IE)

