[Database] 2장. 관계형 모델

Serendipity·2023년 5월 2일
0

[Database]

목록 보기
3/6

① Relation

데이터베이스 관계는 데이터베이스 내 테이블들이 어떻게 서로 연결되어 있는 지 나타내는 방식
이다. 이에는 일대일 관계, 일대다 관계, 다대다 관계 등이 있다. 일대일 관계는 테이블1의 key 하
나가 테이블2의 key 하나와 연결된 관계이다. 일대다 관계는 테이블1의 key 하나가 테이블2의
key여러 개와 연결된 관계이다. 다대다는 테이블과 테이블 사이를 연결해주는 별도의 테이블을
만들어 다대다 관계를 두 개의 일대다 관계로 풀어주며 구현한다.

② Attribute

속성은 데이터베이스를 구성하는 가장 작은 논리적 단위이다. 이는 Entity 의 고유 성격을 표현한
다. 인스턴스의 구성요소이고, 업무에 필요한 데이터를 저장할 수 있다.

③ Tuple

관계형 데이터베이스에서 Tuple은 하나의 레코드이다. 한 행을 의미하며, 서로 다른 객체를 보관
할 수 있는 데이터 구조이다.

④ Superkey

유일성을 만족하는 키이다. 키 중에서 가장 많은 것을 포괄하는 개념이다. 어떤 속성끼리 묶던 중
복 값이 안 나오고 서로 구별만 할 수 있으면 된다.

⑤ Candidate Key

슈퍼키들 중에서 속성은 최소한의 개수로 구분할 수 있어야 후보키가 될 수 있다. 최소성을 만족
하지 못하는 키는 제외된다.

⑥ Primary Key

테이블에서 데이터를 유일하게 구분하는 키를 기본키라고 한다. 기본 키는 후보키들 중에서 하나
를 선택한 키이다. 최소성과 유일성을 만족하는 속성이다. 테이블에서 기본키는 단 1개만 지정할
수 있다. 또한 NULL값을 지닐 수 없으며, 중복된 값을 가질 수도 없다.

⑦ Foreign Key

기본키를 다른 테이블의 외래키와 연결되어 테이블 간에 연결된다. 외래키는 한 테이블의
attribute 중 다른 테이블의 행을 식별할 수 있는 키이다. 참조되는 테이블의 기본키와 동일한 키
속성을 가진다. 참조될 열의 값은 참조될 테이블에서 기본키로 설정되어 있어야 한다. 참조되는
테이블고 당하는 테이블에 같은 (참조되는 테이블=부모테이블=시작점=먼저 만들어짐, 참조하는
테이블=자식 테이블=화살표방향) 자식테이블을 삭제해야 부모테이블을 삭제할 수 있다.

2.2

참조되는 테이블에 외래키가 있어야 한다. 외래 키 제약조건을 고려해야 합니다.
a. Insert의 예
department 테이블의 Dapt_name값을 갖는 행을 instructor에 삽입하면 외래 키 제약 조건을 위
반합니다.
b. Delete의 예
Department 테이블에는 dept_name 값이 있어서 외래 키 제약 조건을 위반합니다.

2.3

Day와 start_time은 기본키에 속합니다. 왜냐하면 특정 수업이 일주일 중 특정 Day에 start_time
이 다르게 진행될 수 있기 때문입니다. 같은 날에도 두 번 이상 진행이 될 수도 있습니다. 하지만
하나의 수업은 한번의 세션으로 진행될 것이기 때문에 DB 프로그래머는 end_time에 대한 자료
를 더 추가할 계획이 없을 것입니다. 따라서 추가하지 않았을 것입니다.

2.6

2.7

profile
I'm an graduate student majoring in Computer Engineering at Inha University. I'm interested in Machine learning developing frameworks, Formal verification, and Concurrency.

0개의 댓글

관련 채용 정보