1:M 관계
1:M 관계는 한쪽이 관계를 맺은 쪽의 여러 객체를 갖는 것을 의미한다. 1:M 관계는 가장 흔하게 나타나는 매우 일반적인 형태이다. 대표적인 예로 부모와 자식 관계, 컴퓨터 Directory 구조가 있다. 테이블은 서로 선천적으로 관계를 갖고 있다.(RDBMS)
1:M 관계는 부모와 자식 관계와 같다. 부모는 자식이 없어도 되고, 자식이 1명 또는 여러명일 수도 있다. 그러나 자식은 부모가 단 한명이어야 하며, 부모없는 자식은 존재하지 않는다. 데이터베이스에서 1:M 관계를 설정하면 부모없는 자식이 생기는 것을 막아준다.
학년 테이블과 반 테이블을 예로 들어볼 수 있다. 여기서 학년 테이블이 부모, 반 테이블이 자식이 된다. 학년테이블의 PK인 학년번호가 반 테이블의 FK인 학년번호와 연결된다. 1:M 관계를 설정할 때 부모 자식 간의 PK와 FK의 명칭은 반드시 일치하도록 쓴다. 법칙은 아니지만 지키면 좋은 권고사항이다.
부모 없는 자식은 존재하지 않는다.
= 자식이 있는 부모 테이블을 없앨 수 없다.
= 부모가 없는 자식 테이블에는 insert 할 수 없다.
'Programming > 데이터베이스' 카테고리의 다른 글
[PostgreSQL] json, jsonb 타입과 연산자 (0) | 2024.01.21 |
---|---|
M:N 관계 (0) | 2021.07.21 |
1:M 재귀적 관계 (0) | 2021.07.20 |
주 식별자 (Primary Key) 설계 (0) | 2021.07.20 |
관계형 데이터베이스(RDBMS), 주식별자와 후보식별자 (0) | 2021.07.17 |