DB/MySQL

[MySQL] constraint

이리53 2022. 3. 16. 17:43

constraint

  • 데이터 삽입 시, 테이블에 명시되어져 있는 모든 제약조건을 검사해야 된다면 삽입 속도가 저하될 수 있다.
  • 그래서 일시적으로 제약 조건을 drop 후, 모든 데이터 삽입 후에 다시 add 할 수 있다.
  • 그러나 이를 위해서는 2가지 선결 조건 이 필요하다.
    1. 제약 조건을 일시적으로 해제하는 것이기 때문에, 본래의 제약 조건에 부합하지 못하는 데이터가 삽입 될 수 있다. 따라서 해당 데이터가 완전 무결하다는 보장이 필요하다.
    2. 제약 조건을 drop, add 하기 위해서는 해당 제약 조건이 컬럼 단위로 지정되어져 있는 것이 아니라 constraint로 인해 지정되어져 있어야 한다.
constraint 제약조건명 제약조건
  • 그래서 위와 같이 테이블 단위로 제약조건명을 명명하여 제약 조건을 지정해야 한다.
  • drop, add의 사용이 불명확 하더라도, 컬럼 단위 조건 지정보다 테이블 단위 조건 지정을 습관으로 잡는 것이 바람직해 보이기도 한다.

'DB > MySQL' 카테고리의 다른 글

[MySQL] 유저 비밀번호 변경  (0) 2022.03.29
[DB] 정규화  (0) 2022.03.22
[MySQL] Table 생성 - 제약 조건  (0) 2022.03.16
[MySQL] SQL  (0) 2022.03.16
MySQL JOIN  (0) 2021.09.02