□ 제약조건의 종류
- PRIMARY KEY(기본키)
- UNIQUE KEY(고유키)
- NOT NULL
- CHECK
- FOREGIN KEY(외래키)
□ 기본키 할당
ALTER TABLE 테이블명
ADD CONSTRAINT constraint_name PRIMARY KEY(칼럼명1, 칼럼명2)
□ 트랜잭션의 특성(ACID)
- Atomicity (원자성)
- 트랜잭션의 작업은 모두 수행되거나(All) 전혀 수행되지 않아야 함(None).
- 중간에 일부만 실행되고 실패하면 이전 상태로 롤백(Rollback) 되어야 함.
- Consistency (일관성)
- 트랜잭션 전후로 데이터베이스가 무결성 제약조건을 항상 만족해야 함.
- 예: 은행 계좌 이체 시, A 계좌에서 10,000원이 빠지면 B 계좌에 10,000원이 들어가야 총합은 동일.
- Isolation (고립성, 격리성)
- 동시에 여러 트랜잭션이 실행되더라도 서로의 작업에 간섭하지 않아야 함.
- 트랜잭션이 완료되기 전까지 다른 트랜잭션에서 그 중간 데이터를 볼 수 없음.
- Durability (지속성)
- 트랜잭션이 성공적으로 커밋되면 그 결과는 시스템 장애가 발생해도 보존되어야 함.
- 디스크나 로그에 기록하여 보장.
□ DELETE(MODIFY) ACTION
- CASECADE : Master 삭제 시 Child 같이 삭제
- SET NULL / SET Default : "" NULL값 처리 / 기본값
- RESTRICT : Child 테이블에 PK값이 없는 경우에만 Master 삭제 가능
- No Action : 참조 무결성을 위반하는 삭제나 수정 액션 X
DROP | TRUNCATE | DELETE |
ROLLBACK 불가(Auto Commit) | ROLLBACK 불가(Auto Commit) | 사용자 Commit 이전 ROLLBACK 가능 |
테이블이 사용했던 Storage를 모두 Release |
최초 테이블 생성 시 할당 된 Storage 남기고 Release |
데이터 모두 Delete해도 Storage Release 되지 않음 |
테이블 정의 자체를 완전히 삭제 | 테이블을 최초 생성된 초기 상태로 만듦 | 데이터만 삭제 |
□ INSERT ACTION
- Automatic : Master PK 자동으로 생성 후 Child 입력
- SET NULL / Default : PK가 없으면 NULL 값 처리 / 기본 값
- Dependent : Master 테이블에 PK가 존재할 때만 Child 입력 허용
- No Action : 참조 무결성을 위반하는 액션 X
□ DB 키의 종류
- 기본키 : 엔터티를 대표하는 키(NULL 값 불가)
- 후보키 : 유일성과 최소성 만족
- 슈퍼키 : 유일성만 만족
- 대체키 : 기본키 제외 나머지
- 외래키 : 여러 테이블의 기본 키 필드, 참조 무결성을 확인하기 위해 사용(NULL 값 가능)
- 고유키 : 고유한 값 보장(NULL 값 단 1개만 가능)
'이론공부 > 자격증' 카테고리의 다른 글
SQLD(SQL 활용) (1) | 2025.08.18 |
---|---|
SQLD(SQL 기본) (2) | 2025.08.18 |
SQLD(데이터 모델과 SQL) (2) | 2025.08.18 |
SQLD(데이터 모델링) (3) | 2025.08.15 |
네트워크관리사 2급 (3) | 2025.08.06 |