Schema
데이터베이스를 구성하는 개체, 속성, 관계 등 구조에 대한 정의와 이에 대한 제약 조건을 기술한 것
- 개체(Entity)
- 속성(Attribute)
- 관계(Relationship)
외부 스키마, 개념 스키마, 내부 스키마로 나눈다.
외부스키마
- External Schema
프로그래머나 사용자의 입장
에서 데이터베이스의 모습으로 조직의 일부분을 정의한 것
개념스키마
- Conceptual Schema
- 모든 응용 시스템과 사용자들이 필요로 하는 데이터를 통합한
조직 전체의 데이터베이스 구조
를 논리적으로 정의한 것
내부스키마
- Internal Schema
- 전체 데이터베이스의
물리적 저장 형태
를 기술하는 것
DB에서 Primary Key가 필요한 이유
- 검색할 때 Primary Key를 기반으로 검색이나 결합한다.
- 데이터가 검색 시 중복된 데이터가 검색되지 않게 한다.
Primary Key(기본키)
- 개체 타입에서 개체를 유일하게 식별해주는 속성 또는 속성의 집합
- Not Null + Unique (+ Index)
보안과 무결성
보안
- 권한이 없는 사용자로부터 데이터베이스를 보호하는 것
- 3대 원칙: 기밀성, 무결성, 가용성
- 권한 부여 기법과 암호화 기법이 있다.
무결성
- 권한이 있는 사용자로부터 데이터베이스를 보호하는 것
- 데이터의 정확성을 보장하는 것
- 개체 무결성, 참조 무결성 등이 있다.
개체 무결성
- 한 릴레이션의 기본키를 구성하는 어떠한 속성도 null이 될 수 없고 중복될 수 없다.
참조 무결성
- 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없다.
보안과 무결성 침해
보안 침해
- 허가받지 않은 사용자가 접속하여 문제를 일으키는 것
무결성 침해(파괴)
- 허가받은 사용자가 권한을 남용하여 문제를 일으키는 것
- CUD(추가, 수정, 삭제) 등을 잘못하여 데이터에 문제가 생기는 것