내가 판매 응용 프로그램을 만드는 오전 여기에 :)가 오버 설계 데이터베이스 설계
명에서 도움의 제품과 판매 감사의 예비 설계가 나는 그러나 나는 아마도 과잉이다 아닌 경우 확신 엔지니어링 또는 내 디자인을 약간 단순화 할 수 있습니다.
다음은 내 제품 주문 스키마입니다.
일부 비즈니스 규칙 : 고객이 하나 이상의 계약
- 제품은 하나 이상의 네트워크에서 공급할 수 있습니다.
- 배포자가 하나 이상의 네트워크에서 제품을 판매 할 수 있습니다.
- A pro
이 내 디자인이
을 과도하게 설계되었습니다 : 가격은 유통
내 질문에 따라 달라질 수 있습니다 덕트? 그것은 그것의 링크 테이블의 사용과 제품의 3 개 버전의 창조와 매우 복잡한 것 같다
- 네트워크 제품
- 유통 제품
- 내가 시행하려고
제품 예를 들어 배급업자가 네트워크를 판매하지 않는 경우 데이터베이스의 비즈니스 규칙은 네트워크 a의 제품을 사용할 수 없어야합니다. 제품을 배포자에게 할당하는 것만으로는 충분하지 않습니다. 모든 제품을 네트워크에서 가져온 다음 배포자 1이 네트워크를 판매하지만 B의 제품을 볼 수없는 쿼리는 어려운 규칙이며 사람들이 제품을 선택하지 못하도록하고 싶지 않습니까?
내가 스키마를 조정할 수 없다고 가정하면 NetworkPRoduct와 DistributorNetwork는 Distributor 제품에서 사용되는 복합 기본 키가 가장 좋으며 networkprodutid와 같은 대용 키를 사용하면 어떻게 될까요? 이는 디스트리뷰터가 특정 네트워크만을 판매한다는 사실을 여전히 나타 냅니까?
감사
롭
귀하의 질문과 관련이 없지만 Distributor1 테이블에는 두 개의 전화 번호 열이 있습니다. 다른 테이블로 정규화 할 가치가 있을까요? 나는 누군가가 세 번째/네번째 등등을 요구할 때 어떤 일이 일어날 지 궁금합니다. – Bridge
감사합니다. 더 이상 필요하지 않으므로 모든 연락처 세부 정보를 제거 할 것입니다. –
"데이터베이스에서 비즈니스 규칙을 시행하려고합니다 ..."샘플 데이터를 삽입하면 스키마에서 이러한 모든 규칙을 적용 했습니까? –