2010-02-22 2 views
2

이벤트에 대해 자동 이체, 신용 카드, 파일에 신용 카드 등 다른 결제 유형을 입력 할 수있는 payment_types 테이블이 있습니다. 각 지불 유형에 대해 사용자가 할부로 지불 할 수 있도록 허용 할 것인지와 시작일과 종료일 및 허용 할 할부 수를 지정할 수 있습니다. 할부가없는 지불이 가능하므로 payment_types에 링크 된 별도의 Installments 테이블을 보유해야합니까? 아니면 할부를 허용하지 않는 경우 해당 분납 기둥을 payment_types 테이블에서 공백으로 두어야합니까?0 또는 1 개의 항목에 대해 다른 테이블을 만들어야합니까?

편집 : 위에서 언급 한 시작일과 종료일은 결제 유형 자체가 아닌 할부에 적용됩니다. 일정 자체에는 날짜 범위가 있으므로 결제 유형 자체에는 날짜 범위가 없습니다.

답변

1

설치 정보 (허용 여부와 날짜 여부)가 지불 유형과 관련되어 있으므로 동일한 테이블에 넣을 것입니다. 또한 설치가 허용되는지 여부에 대해 별도의 플래그를 사용하지 않을 것입니다. 시작 날짜와 종료 날짜가 NULL이면 설치가 허용되지 않습니다. 별도의 입력란을 사용하면 실적이 좋지 않을 수 있습니다 (예 : 분할 항목 플래그가 0이지만 날짜가 null이 아님)

결제 기간이 두 개 이상일 수있는 경우 별도의 표가 의미가 있습니다 , 날짜는 지불 유형과 직접적으로 관련되므로 같은 테이블에 보관하십시오.

+0

날짜는 결제 유형이 아닌 할부와 직접 관련됩니다. 이 경우 당신의 대답이 바뀌겠습니까? – Riz

+0

확실히 날짜는 그들이 속한 테이블에 속합니다. 날짜가 지불 유형이 아닌 할부와 관련된 경우, 필자는 확실히 내 대답을 변경하고 함께 연결된 별도의 테이블을 작성합니다. – Sparky

+0

감사합니다. 도움이되었다. – Riz

0

결제 방법이 두 가지 유형의 기간을 가질 수없는 경우 결제 정보 표에 결제 정보를 입력하십시오. 기간 유형이 두 개 이상인 경우 (예 : 한 달에 한 번, 6 개월 이상) 그러면 자신의 테이블에 넣을 수 있습니다. 자신의 테이블에 넣으면 주 테이블에서 2 개의 FK가 생깁니다. 1은 지불 유형, 1은 지불 일정입니다. 지불 일정 FK가 Null 인 경우 1 회 지불임을 알 수 있습니다. 즉, 지급금이 일정표를 가지고 있는지 또는 주된 지불 테이블에 있는지 여부를 보여주는 귀하의 깃발을 복제해서는 안됩니다. 그러면 복제 및 오류가 줄어 듭니다.

+0

감사합니다. 귀하의 의견도 도움이되지만, 스파이 답변을 먼저 그래서 나는 그에게 대답을 수여했습니다. – Riz

관련 문제