2010-04-05 3 views
1

저는 MySQL 데이터베이스를 사용하여 시스템을 구성하고 있습니다. 약 20 개의 테이블을 응용할 것입니다. 이 시스템에는 농부에 대한 정보가 포함되어 있으며, 유기농 인증으로 작업하며 많은 정보를 기록해야합니다.데이터베이스 디자인 : 여러 테이블에 적용 할 수있는 정보를 어떻게 추가해야합니까?

내 시스템에는 농부를위한 관련 학부모 - 아동 표가 있으며 년 및 분야/지역을 생산합니다. 농민들이 농작물을 농지로 재배하는 현실 세계를 간단하게 표현한 것입니다.

이제 각 레벨에 대해 여러 가지 상태 플래그를 추가해야합니다. 농부가 인증을 받거나 필드가 있거나 특정 연도가 될 수 있습니다. 이러한 각 플래그는 여러 상태가 있으며 여러 번 발생할 수 있습니다.

명백한 해결책은이 테이블의 모든 테이블에 하위 테이블을 추가하고 거기에 상태를 정의하는 것입니다.

많은 테이블을 피하기 위해 더 쉬운 방법이 있는지 궁금합니다. 해당 데이터를 보관하는 가장 좋은 방법은 어디에서 어떻게 될까요?

+0

서로 다른 여러 인증서입니까, 다른 범위를 가질 수있는 단일 인증서입니까? 예 : 특정 분야에만 적용된다는 것을 제외하고는 "농부"인증과 정확히 같은 유형의 "현장"인증 *입니다. – tloflin

+0

예, 그렇습니다. "현장"인증은 특정 필드에만 적용된다는 점을 제외하고는 "농부"인증과 정확히 같은 유형입니다. – Stefan

답변

1

인증 될 수도 있고 인증되지 않을 수도있는 데이터가 포함 된 모든 테이블의 표시기는 어떻습니까? 새 테이블을 추가하는 것보다 쉽습니다.

"인증"이 실제로 여러 조각/데이터 필드의 조합 인 경우 하나의 "인증"테이블을 가지며 다른 테이블은 외래 키 (예 : "certification_id")를 통해이를 참조 할 수 있습니다. "인증"테이블의 핵심입니다).

관련 문제