0
내 시나리오가 정상적인 레벨의 레벨과 관련하여 정규화에 대한 질문이 있습니다. 이름 필드 1, 주소 2, 우편 번호 및 전화 번호와 같은 필드가있는 테이블이 몇 개 있습니다.데이터베이스 표준화; 반복 필드
Client [id, instructor id, name, address, postcode, phone, practical, theory]
Staff [id, office id, name, job, address, postcode, phone]
Registration id, name, address, postcode, phone]
Office [id, manager id, address, postcode, phone]
는 정상적인 형태의 정상화 그런 일을한다면
Client [id, instructor id, details_id, practical, theory]
Staff [id, office id, details_id, phone]
Registration [id, details_id]
Office [id, manager id, details_id]
Details [id, full_name, address1, address2, postcode, phone_no]
하지
확실히 ... 그들과 같이 무언가로 필드를 분리하기 위해 존재겠습니까하지만 ... 단지 생각했다
주소 테이블? 그래. 그러나 엔티티에 이름을 지정했습니다. 비슷한 문제에 직면 한 SOmeone : http://stackoverflow.com/questions/5530681/normalize-an-address – mcalex
고마워,하지만이게 정상화의 유형을 궁금해했다. NF3? 나는 그것을 100 % 이해하지 못한다 .. – Callum
여러 테이블에서 비슷한 필드를 분리하는 것은 일반적인 폼의 문제가 아니다. 각 원본 테이블은 모두 3NF입니다. 여러 테이블의 모든 유사한 데이터를 하나로 모으는 것은 정규화 기술이 아닙니다. 이런 식으로하는 이유는이 정보에 대한 유지 보수 코드를 합리화하는 것일 수 있습니다. 유일한 예외는 테이블이 주소 특성을 공유하는 일부 4 퍼 유형의 부속 유형 인 경우 일 수 있습니다. 그렇다면 관계를 조금 뒤집어 놓았습니다. 'Details'는 실제로'Supertype'입니다. –