-
데이터 베이스 기초 - 기본키, 후보키, 대체키, 외래키, 테이블, 상속, 관계의 표현전공 - IT/데이터베이스 2023. 4. 8. 00:19
기초 용어
슈퍼키란 대상을 구분할 수 있는 키들을 말하며 단일키와 복합키로 범위가 넓다
후보키란 기본키가 될 수 있는 단일 키들을 말한다
기본키는 사용자가 설정하는 것이고 후보키인 학번과 주민번호 중에서 정하는 것이다
대체키는 기본키를 사용하지 못한다게 된다는 일이 발생하였을 경우 기본키를 대체하여서 사용할 수 있는 키를 말한다
( 반장이 자리 비웠을때 부반장이 반을 대표하는 역할 )외래키란 학생테이블에 있는 학과 코드에 대한 정보가 부족하고 학과 테이블의 학과 코드와 내용이 같기 때문에
학과 테이블에서 기본키인 학과코드를 참고하여 학생테이블에서 학과코드를 외래키로 설정할 수 있다학생테이블에서 기본키, 속성, 튜블에 대한 정보는 위 사진에 색으로 구분해 놓았다
학생테이블에서 학번, 이름, 학년, 학과 중에서 1개를 골라 누구인지 알 수 있게 해 주는 것은 학번이기에 학번이 기본키이다
스키마는 구조를 말하는 것이어서 학번, 이름, 학년, 학과 가 포함이 된다
도메인은 한 속성에 나타날 수 있는 속성 범위이고 학년을 예로 든다면 1학년부터 3학년까지 범위를 정할 수 있다
위 그림은 상속관계를 그린 것이고 대학생, 직장인, 자영업 3가지 모두 수강생과 부모 자식의 관계이다
ISA 옆에 괄호로 추가적인 정보를 적을 수 있는데 4가지의 내용은 아래와 같다
Disjoint : 상위개체는 하나의 하위개체에만 포함될 수 있다
Overlapping : 상위개체는 여러 하위개체에 포함 될 수 있다
Total : 상위개체는 하위개체에 속할 수 있다
Partial : 상위개체는 하위개체에 속하지 않을 수 있다
위 4가지의 형태 모두 같은 내용을 말하지만 그려지는 형태가 다르다
맨 위에 학생 - 수강 - 과목 의 그림에 동그라미와 네모를 연결해주어야 하는데 빼먹었다
이 사진 역시 네모와 동그라미의 연결을 빼먹었다
여기서 중요한 것은 여러 명의 학생이 1개의 학과에 소속이 되어있는 관계를 나타내고 있다는 것이다
위 사진과 같이 테이블을 여러 개로 쪼개는 방법도 있다
1번 → 왼쪽 오른쪽 모두 1개씩 필수로 있어야 함
2번 → 왼쪽은 1개 필수, 오른쪽은 0~1개 선택
3번 → 왼쪽은 1개 필수, 오른쪽은 여러 개
4번 → 왼쪽은 1개 필수, 오른쪽은 1개 이상5번 → 왼쪽은 1개 필수, 오른쪽은 0개 이상
왼쪽과 같은 표시는 1개가 필수적이라는 의미이다
오른쪽에 동그라미 기호는 옵션이어서 있어도 되고 없어도 돼서 선택하면 된다
그리고 < 모양은 여러 가지라는 의미이다
728x90