CS

S) DB_1_key

99duuk 2024. 3. 10. 22:46

무결성 : 데이터베이스에 저장된 데이터가 정확하고 일관성 있게 유지

 

1. 개체 무결성

---> 기본키 구성하는 어떤 속성도 null이나 중복값 가질 수 없음

 

2. 참조 무결성

---> 외래키 구성 속성은 null이거나 참조하는 릴레이션의 pk 값과 동일해야함. (==참조할 수 없는 외래키 값 가질 수 없, 속성과 개수 같아야)

 

3. 도메인 무결성

---> 속성 값은 정의된 도메인에  must 속한 값

 

 

 

 

 

1. 유일성 : 하나의 키 값으로 튜플 유일하게 식별 

---> 주민번호 : 이름, 생년월일, 주소

2. 최소성 : 키를 구성하는 속성들 中 must 필요한 최소한의 속성들로만 키 구성

---> 주민번호, 이름, 생년월일이 모두 같은 사람 존재? ㄴㄴ ==> only 주민번호 만으로도 구별 ㄱㄴ

 

 

 

Super Key : 유일 O, 최소 X

---> 어떤 속성끼릴 묶음 유무와 관계 없이 각 레코드를 구별(유일성 확보) / 중복값 미발생 = 슈퍼키 가능

---> 각 행 고유 식별 가능토록

---> 

ex) 학번 + 성명, 학번 + 주소, 과목코드 + 과목이름

 

Candidate Key : 유일 O, 최소 O

---> 개체 무결성 제약조건 (null, 중복 X)

----> 多 슈퍼키 中 키 구성하는 속성 수가 가장 적은 것이 후보키 

 

Primary Key : 후보키 中 선택

후보키) 학번, 주민등록번호 --> 기본 키) 학번

 

~~~> 자연키 : 릴레이션에서 자연스럽게 발생되는 키 (아이디, 주민번호)

~~~> 인조키 : 관리자가 인위적으로 생성한 키 속성 (상품번호, 상품코드)

  • "식별자로 인조키 지정하는 것이 적절"
  • --> 유일성 만족해도 변경에 따라 유일성 잃게 될 수도 So 식별자 변경 필요;;

Alternate Key : 후보키 - 기본키

기본키를 제외한 나머지 

 

Composite Key : 2개 이상 속성 결합, 하나의 키로 사용

---> 개별적으로는 고유하지 않지만 결합 통해 고유성 제공

---> 학번 + 성명, 학번 + 주소, 과목코드 + 과목이름

  • ~~~> 슈퍼키와 복합키 차이 
  • 각 행 고유하게 식별에 사용 vs 두 개 이상 열 결합해 유일성 보장
  •  

Foreign Key : 다른 릴레이션의 기본 키를 참조. 관계 표현

---> 데이터 무결성 보존 (존재하지 않거나 잘못된 값 참조)

 

 

 

Unique Key : 중복 X, null 허용

 
 
 
 
 

----------------------------------------------------------------------------------------------------------------------

 

'목차' ,

'한영혼용 지양',

'아이콘 활용',

'본인만 알아보는 글 지양, like "-"'

 

'CS' 카테고리의 다른 글

S)DB_03_트랜잭션3  (0) 2024.03.14
S)DB_03_트랜잭션2  (1) 2024.03.14
S)DB_03_트랜잭션  (0) 2024.03.12
S) 01_Feedback  (2) 2024.03.11
S) DB_2_ERD  (0) 2024.03.11