TIL/Django
[Django] 댓글 구현에 필요한 외래키
빙빙
2021. 3. 25. 09:06
RDB 여러사람이 동시에 사용할 수 있는 집합
테이블 또는 릴레이션이라고 부른다
컬럼 = 속성,필드
row = tuple 또는 record
스키마 : 1. 테이블 이름을 지정하고 2.컬럼의 이름과 함께 타입을 지정
테이블의 구조를 뜻하며 데이터의 형태를 스키마라고 부른다.
테이블 사이에는 관계를 맺을 수 있다
-> 관계형 데이터베이스
현실 세계를 모델링 설계하는 것 : DB모델링
약속
- 하나의 필드에는 하나의 정보만 넣어준다
- 컬럼 이름은 고유하게 하나만 만들 것
- 가능하면 레코드 값의 중복은 피할 것
==> 테이블을 쪼개고 관계를 지어줌
모델관계 필드
- 1:N # 하나의 게시글은 여러개의 댓글을 가질 수 있다.
- M:N
- 1:1
Foreign Key 외래키
자식테이블이 부모테이블을 참조하기 위해 저장한 부모테이블의 PK
한 테이블의 필드 중 다른 테이블의 행을 식별할 수 있는 키
참조되는 측 의 테이블의 기본 키를 가리킴
외래키는 각각 다른 테이블을 참조 할 수 있다
-댓글 작성에서 알아야할 지식
대댓글 - 자기자신에대한 재귀적 외래키
특징
참조 무결성 = 참조하는 컬럼이 존재하는 컬럼이어야 한다
부모테이블의 유일한 키이어야 함
=> 기본키가 가장 부합함