제약조건의 종류: PRIMARY KEY(기본키), UNIQUE KEY(고유키), NOT NULL, CHECK, FOREIGN KEY(외래키)

기본키 할당:

ALTER TABLE 테이블명 ADD CONSTRAINT constraint_name PRIMARY KEY (칼럼명1, 칼럼명2)

트랜젝션의 특성

  1. 원자성: 연산은 모두 실행되거나 전혀 실행되지 않음
  2. 일관성: 연산 이전에 데이터에 잘못 없다면 연산 이후에도 잘못이 있으면 안 됨.
  3. 고립성: 연산 도중 다른 트랜잭션 영향 받지 않음
  4. 지속성: 트랜잭션이 성공적으로 수행되면 영구 저장됨

DELETE(MODIFY) ACTION:

  1. Cascade: Master 삭제 시 Child 같이 삭제
  2. SET NULL / SET Default: “” NULL값 처리 / 기본값
  3. Restrict: Child 테이블에 PK값 없는 경우에만 Master 삭제 가능
  4. No Action: 참조무결성 위반하는 삭제나 수정 액션 X

INSERT ACTION:

  1. Automatic: Master PK 자동으로 생성 후 Child 입력
  2. SET NULL / Default: PK 없으면 Null값 처리 / 기본값
  3. Dependent: Master 테이블에 PK가 존재할 때만 Child 입력 허용
  4. No Action: 참조무결성 위반하는 액션 X
DROP TRUNCATE DELETE
ROLLBACK 불가(Auto Commit) ROLLBACK 불가(Auto Commit) 사용자 Commit 이전 ROLLBACK 가능
테이블이 사용했던 Storage를 모두 Release 최초 테이블 생성 시 할당된 Storage 남기고 Release 데이터 모두 Delete 해도 Storage Release 되지 않음
테이블 정의 자체를 완전히 삭제 테이블을 최초 생성된 초기 상태로 만듦 데이터만 삭제

DB 키의 종류:

종류 설명
기본키 엔터티를 대표하는 키(NULL값 불가)
후보키 유일성과 최소성 만족
슈퍼키 유일성만 만족
대체키 기본키 제외 나머지
외래키 여러 테이블의 기본키 필드, 참조 무결성 확인하기 위해 사용(Null값 가능)
고유키 고유한 값 보장(Null값 단 1개만 가능)