Primary Key & Foreign Key D05

최성진·2023년 2월 15일
0

DBMS

목록 보기
11/12

컬럼 속성(무결성 제약조건)

  • Not Null : 널값이 입력되지 못하게 하는 조건
  • Unique : 중복된 값이 입력되지 못하게 하는 조건
  • Check. : 주어진값만 허용하는 조건
  • Primary key : not null + unique + index 의 의미
  • Foreign Key : 다른 테이블의 필드(컬럼)를 참조해서 무결성을 검사하는 조검

기본키 (Primary Key)

  • 기본키 역시 제약조건들은 테이블을 생성할떄 같이 정의한다.
  • 테이블당 하나만 정의 가능하다.
  • 기본키, 식별자, pk 등으로 불리고 있다.
  • not null + unique + index

외래키 (Foreign Key)

  • 외부키, 외래키, 참조키, fk, 외부식별자 라고 불린다.
  • fk가 정의된 테이블을 자식 테이블이라고 칭한다.
  • 참조되는 테이블 즉 PK가 있는 테이블을 부모 테이블이라 한다.
  • 부모테이블의 pk컬럼에 존재하는 데이터만 자식테이블에 입력할 수 있다.
  • 부모 테이블은 자식의 데이터나 테이블이 삭제된다고 영향을 받지 않는다.
  • 참조하는 데이터 컬럼과 데이터 타입이 반드시 일치해야 한다.
  • 참조할 수 있는 컬럼은 기본키 이거나 unique만 가능하다.(보통은 pk랑 엮는다)

1. 외래키 삭제 옵션

  • 자식에서 외래키 설정할때 사용한다.
  • on delete cascade
    • 참조되는 부모 테이블의 행에 대한 delete를 허용한다.
      즉, 참조된는 부모테이블 값이 삭제되면 연쇄적으로 자식 테이블 값역시 삭제된다.
  • on delete set null
    • 참조되는 부모테이블의 행에 대한 delete를 허용한다.
      이건 cascade와 다른데, 부모테이블이 값이 삭제되면 해당 참조하는 자식테이블의 값들은 null 값으로 설정된다.
profile
마부리입니다

0개의 댓글