데이터베이스에서 Key라는 개념에 대해 설명하려 한다

Key는 기본키, 후보 키, 대체키, 복합 키, 외래 키가 있으며 각각 어떤 특징을 가지고 있는지 보도록 하자

    • 기본키(Primary Key)
      • Null 값이 허용되지 않음
      • 중복을 허용하지 않음
      • 해당 테이블을 대표하는 키
    • 후보 키(Candidate Key)
      • Primary Key + Alternate Key
    • 대체키(Alternate Key)
      • 후보 키 중 기본키로 선택되지 않은 나머지 키
      • Primary Key를 대신할 수 있는 키
    • 복합 키(Composite Key)
      • 하나의 칼럼이 후보 키의 역할을 하지 못하고 기본키가 두 개 이상의 칼럼이 합쳐져야 후보 키의 역할을 하는 경우
    • 외래 키(Foreign Key)
      • 상위 테이블의 PK가 하위 테이블에 PK혹은 일반 데이터가 되면 FK라고 한다
      • 식별과 비식별 관계로 나눌 수 있다
        • 식별 : life cycle이 부모와 자식이 같음 / 부모가 없어지면 자식이 같이 없어짐
        • 비식별 : life cycle이 부모와 자식이 다름 / 부모가 없어져도 자식은 남아 있음
      • 부모 테이블의 기본키는 자식 테이블에 외래 키로 전이된다
      • 두 테이블 간에 외래 키에 의한 참조 관계에 있을 때 두 테이블 간 데이터 불일치가 발생하는 상황이 되면 DBMS는 3가지 조치를 취할 수 있다
        • 제한(Restrict) : 삭제 연산을 거절하는 조치 / 제일 많이 사용된다
        • 연쇄(Cascade) : 관련 데이터를 모두 삭제 / 권장하지 않는다
        • Null 값으로 대체(Nullify) : 관련 데이터를 Null 값으로 대체 / 권장하지 않는다

'DataBase > Oracle' 카테고리의 다른 글

6. Selec  (0) 2021.06.14
5. DDL(Data Definition Language) - Drop  (0) 2021.06.14
4. DML(Data Manipulation Language) - insert  (0) 2021.06.14
3. DDL(Data Definition Language) - Create  (0) 2021.06.10
2. SQL  (0) 2021.06.08

+ Recent posts