- 무결성: 삽입, 삭제, 갱신 등의 연산 후에도 데이터베이스에 저장된 데이터가 정해진 제약조건을 항상 만족해야 한다.
- 일관성: 데이터베이스에 저장된 데이터가 특정 질의어에 대한 응답이 처음부터 끝까지 변함없이 일정해야 한다.
- 회복: 시스템 장애가 발행하였을 때 데이터 베이스를 장애 발생 직전 상태로 복구 할 수 있어야 한다.
- 보안: 불법적인 데이터의 노출 또는 변경이나 손실로부터 보호할 수 있어야 한다.
- 데이터베이스의 확장: 데이터베이스의 운영에 영향을 주지 않으면서 지속적으로 데이터를 추가할 수 있어야 한다.
중복이나 null이 없는 데이터를 담고 있는 필드가 기본키로 적합하다.
후보키(Candidate key): 튜플을 유일하게 식별할 수 있는 특성을 가진 속성이나 속성의 집합. 유일성과 최소성을 만족한다.
기본키: 후보키 중에서 각 튜플을 식별하기 위해 선택한 키
대체키(Alternate key): 후보키 중 기본키를 제외한 나머지 후보키들
슈퍼키(Super key): 유일성만 있고 최소성이 없는 속성들의 집합(하나 이상의 키로 구성되어 있음)
외래키(Foreign key): 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합으로 이루어진 키
도메인 무결성: 모든 속성은 특정한 도메인으로 정의되므로 해당 속성은 도메인에 존재하는 값만 가질 수 있다는 조건
- Restricted: 문제가 되는 연산을 거절한다.
- Cascade: 참조되는 릴레이션에서 튜플을 삭제하고 참조하는 릴레이션에서 이 튜플을 참조하는 튜플도 함께 삭제한다.
- Nullify: 참조되는 릴레이션에서 튜플을 삭제하고 참조하는 릴레이션에서 이 튜플을 참조하는 튜플들의 외래키에 null을 넣는다.
- Default: null을 넣는 대신에 디폴트 값을 넣는다.
- 고유 무결성: 릴레이션의 특정 속성에 대해 각 튜플이 갖는 속성 값들이 서로 달라야 한다.
- 도메인 무결성: 특정 속성의 값이 그 속성에 정의된 도메인에 속한 값이어야 한다.
- 키 무결성: 하나의 릴레이션에는 적어도 하나의 키가 존재해야 한다.
- 관계 무결성: 릴레이션에서 어느 한 튜플의 삽입 가능 여부 또는 한 릴레이션과 다른 릴레이션의 튜플들 사이의 관계에 대한 적절성 여부를 지정한 규정이다.
연산에 참여한 속성이 두 번 나오지 않도록 중복된 속성을 제거한 결과를 반환한다.
두 릴레이션으로부터 관련있는 튜플을 결합하여 하나의 튜플로 생성한다. 이때 관련성의 여부를 조건으로 표시하며, 조인조건이라고 한다.
(전산학 기출문제 위주) 조금씩 추가해나갈 예정