분해된 테이블을 공통 키로 다시 연결했을 때 원본 주문 데이터가 그대로 돌아오고, 없던 조합이 새로 생기지 않아야 합니다.
검증 방법
같은 키로 재조인해서 원본을 복원
주문상세를 중심으로 주문, 고객, 상품을 다시 붙여 보면 분해가 상태를 보존했는지 확인할 수 있습니다.
주문번호
주문상세 ↔ 주문 연결
고객번호
주문 ↔ 고객 연결
상품코드
주문상세 ↔ 상품 연결
SELECT od.주문번호, o.고객번호, c.고객이름, c.전화번호,
od.상품코드, od.수량, p.단가
FROM 주문상세 od
JOIN 주문 o ON od.주문번호 = o.주문번호
JOIN 고객 c ON o.고객번호 = c.고객번호
JOIN 상품 p ON od.상품코드 = p.상품코드;
검사 1
원본과 같은 행과 값이 돌아오는가?
조인 결과가 분해 전 주문 테이블의 컬럼 조합과 같아야 합니다. 빠진 정보가 있으면 분해 과정에서 손실이 생긴 것입니다.
통과 의미: 정보 무손실 분해
검사 2
원래 없던 주문-상품 조합이 생기지 않는가?
공통 키가 잘못 분리되면 고객, 주문, 상품이 엉뚱하게 다시 결합되어 가짜 행이 생깁니다. 그런 스퓨리어스 튜플이 없어야 합니다.
통과 의미: 스퓨리어스 튜플 없음
핵심 판단: 재조인 결과가 원본과 동일하고 가짜 행도 없다면, 이 분해는 원본 상태를 보존하는 올바른 분해입니다.