2011-05-08 5 views
0

논리 지향적 인 문제가 있다고 생각합니다. 저는 사이트에서 데이터베이스를 최종 사용자에게 유용하게 만들기 위해 데이터베이스를 재구성하고 있습니다. 다음과 같이 보입니다. 사용 가능한 7 개의 제품 목록이 있으며, 각각의 ID는 1-7입니다. 다중 상품 (예 : 새로운 고객이 EPL, Crime Fidelity 및 Fiduciary가있는 제품 추가 양식을 제출할 수 있음)을 가질 수있는 각 고유 제출을 식별하기 위해 자동 증가 ID 속성 (SubmissionId)이있는 제출 테이블이 있습니다. 중복 제품은 아닙니다 (EPL 및 다른 EPL을 가질 수 없음). 나는 제품 ID를 각 제출물에 작동 가능한 방식으로 연결하여 사용자가 제출물을 검토하여 리뷰 할 때 관련 정보를 표시 할 수 있도록해야합니다 (기본적으로 장바구니를 보듯이). 분명히 최종 계산에서 7 자리가 반드시 필요하지 않을 때 1-7의 가능한 모든 반복을 사용하여 테이블을 만드는 것은 실현 가능하지 않습니다 (그렇지 않으면 49 만있을 것이기 때문에). 그래서 결합 할 수있는 방법이 있는지 궁금합니다. 각 제품 ID를 문자열 또는 이와 유사한 것으로 변환하고 Submission 테이블의 ProductId 열에 해당 번호를 삽입 한 다음 SELECT WHERE LIKE 문을 사용하여 해당 SubmissionId와 관련된 모든 제품을 불러옵니다.문자열을 조합하여 여러 값을 열에 삽입 하시겠습니까?

예를 들어 사용자가 새 양식을 제출하면 데이터베이스에서 SubmissionId 열의 값을 8로 자동 증가시킵니다. 그런 다음 네 개의 제품을 추가합니다. EPL, Crime Fidelity, Fiduciary 및 Professional D & O. 해당 제품의 제품 테이블에있는 "ProductId"열에 각각 1,3,4 및 6의 값이 있습니다. Submission 테이블에 삽입 할 Collective ProductId 값은 1346이고 SubmissionId 8과 관련된 데이터를 표시하는 논리는 ProductId를 통해 반복되는 switch case 문을 사용하여 각 ProductId가 1-7을 포함하는지 확인합니다. Where ProductId가 LIKE (숫자)인지 확인한 다음 관련 사례의 데이터를 표시합니다. 제출 테이블의 ProductId 열에 삽입 할 "1346"값을 어떻게 얻을 수 있습니까?

답변

1

제출과 함께 제품을 연결할 테이블을 추가해야합니다 (예 : 표 S2P {Id, ProductId, SubmissionId} (나는 더 나은 이름을 제시 할 수 없다). 이것은 다 대다 관계를 구현하는 표준 방법입니다.

자세한 내용을 보려면 http://www.tomjewett.com/dbdesign/dbdesign.php?page=manymany.php 또는 많은 관계가있는 google을 확인하십시오.

+0

음, 예. 너는 내 어머니가 임신했을 때 마셨다. 그래서 나는 명백한 문제에 대해 복잡한 해결책을 고안하기로 결정했습니다. 내 장애를 감안할 때, 정부는 저에게 보조금을 제공해야한다고 생각합니다. –

+0

감사합니다. @empi. 매우 감사. –

관련 문제