관련 영업 사원과 함께 우편 번호가있는 테이블이 있습니다. 우리는 최종적으로 각 우편 번호와 연관된 여러 영업 사원이있을 수정을 추가하고 있습니다. 새로운 영업 사원을 위해 새 열을 추가하거나 행을 추가하는 것이 가장 좋습니다.새 열 추가 vs 행 효율성 추가
약 150 만 개의 우편 번호가 테이블에 있습니다.
관련 영업 사원과 함께 우편 번호가있는 테이블이 있습니다. 우리는 최종적으로 각 우편 번호와 연관된 여러 영업 사원이있을 수정을 추가하고 있습니다. 새로운 영업 사원을 위해 새 열을 추가하거나 행을 추가하는 것이 가장 좋습니다.새 열 추가 vs 행 효율성 추가
약 150 만 개의 우편 번호가 테이블에 있습니다.
아니요.
새로운 영업 사원을 위해 새 열을 추가하는 것은 시동기가 아닙니다. 새로운 영업 사원을 추가하려면 임의로 열을 추가해야합니다. 이것은 모든면에서 나쁜 생각입니다.
새 행을 추가하면 테이블에있는 데이터의 의미가 변경됩니다. 이 테이블에는 우편 번호와 해당 엔티티에 대한 정보가 들어 있습니다. 그 이상의 책임을지지 않습니다.
설명하는 것은 다 대다 관계입니다. 이는 두 엔티티 간의 연결 테이블을 통해 수행됩니다. 이 같은 간단한 : PostalCode
에
PostalCode
---------------
ID
Code
etc.
Salesperson
---------------
ID
Name
etc.
SalespersonPostalCode
---------------
ID
SalesPersonID
PostalCodeID
각 행은 우편 번호를 나타냅니다. Salesperson
의 각 행은 영업 사원을 나타냅니다. 그리고 연결 테이블의 각 행은 둘 사이의 관계를 나타냅니다. 원하는만큼의 관계를 추가 할 수 있습니다. 그러나 원하는 경우 새로운 도메인 엔티티 레코드를 임의로 추가하지 마십시오. 둘 사이에 관계를 추가하는 것이 좋습니다.
절대적으로 !!! 영업 사원을 위해 다른 열을 추가하고 싶지는 않을 것입니다. 이미 심각한 정규화 문제가있는 것 같습니다. 이런 유형의 테이블에는 세 개의 테이블이 필요합니다. PostalCodes, SalesPerson 및 SalesPersonPostalCodes가 있습니다. –
나는 동의하지만 안심 감사드립니다. 그것은 지금 여기서 일하는 모든 사람들보다 오래 전에 만들어진 테이블입니다. – joetinger
이 문제를 해결하기에는 아직 늦지 않을 수도 있습니다. 이 테이블에는 이미 중복 된 우편 번호 및/또는 영업 담당자가있는 것으로 추측됩니다. 나는 너의 고통을 느낀다. 이미 비명 거리고 도망친 사람들에게서 발견 할 수있는 끔찍한 디자인을 풀어 내기 란 쉽지 않습니다. –