비즈니스를 설계해야 제약조건이 나온다.
그림을 먼저 그려야 테이블 설계가 가능하다.
게시판 설계 할 때 데이터를 중복시키면 업데이트시에 일관성이 깨지게 되서 안됨
컬럼을 늘리는 것 또한 쿼리를 짜기 어려워 지니 하면 안됨
만약 하나의 컬럼에 게시물을 ,하여 늘리면 컬럼의 원자성이 깨져서
조회가 불가능 해진다.
(1번 사용자의 1번 게시물을 조회하고 싶은데 ,해서 넣으면 같이 들어가있음)
만약 데이터가 한건이 아니라면 컬럼을 그 데이터의 수만큼 쪼개서 만들어야한다.
N대 N이면 행위 테이블이 필요하고
N대 1이면 폴링키가 필요하다
폴링키는 N부분에 해준다.
폴링키가 있는게 드라이빙 테이블
NForD
드라이빙 테이블 : 드라이빙 테이블(Driving Table)은 데이터베이스에서 조인 연산을 수행할 때 사용되는 기준이 되는 테이블을 말합니다. 조인 연산은 두 개 이상의 테이블을 연결하여 필요한 데이터를 검색하거나 연산하는 작업입니다. 이때, 조인 연산을 수행하기 위해 하나의 테이블을 기준으로 다른 테이블과 조인하는데, 이 기준이 되는 테이블을 드라이빙 테이블이라고 합니다.