Ich habe eine Situation, in der Kunden in der Lage sind, entweder über eine Kreditkarte oder über ein PayPal-Konto zu bezahlen. Ich habe derzeit eine Super-Klasse als "Kunde" mit zwei Untertypen von "öffentlich" und "kommerziell". Beide Arten können jedoch mit beiden Zahlungsmethoden bezahlen und mehrere Kreditkarten/PayPal-Konten haben.Darstellen von mehreren Zahlungsmethoden
Ich habe ein aktuelles Modell, das funktioniert, aber nicht für mehrere Karten usw. Ich muss schließlich in der Lage sein, abzufragen, welcher Kunde mit welcher Methode bezahlt. Zum Beispiel, wie viele Kunden während eines Zeitraums per Kreditkarte bezahlt haben.
Das Modell abzüglich der Zahlungsdetails sehen die ähnlich wie:
[ORDER] ----- [CUSTOMER] --- (D) --- [PUBLIC] [COMMERCIAL]
nach oben zu ziehen, wenn man diese beiden tabl sagen assoziieren es (Weil ich sie schon habe), wie schlägst du vor, das zu tun? Fügen Sie eine Verknüpfungstabelle zwischen KUNDE und AUFTRAG ein ... Sagen Sie, ZAHLUNG, die zu CREDITCARD und PAYPAL verbindet? @TomEsch –
Wenn es auf der Plattform, auf der Sie sich befinden, gut funktioniert, würde ich zwei Felder zu ORDER hinzufügen, eine, die PaypalID ist und eine, die eine CreditCardID ist, und nur die entsprechende ausfüllen und die andere Null lassen. Machen Sie diese Felder Fremdschlüssel für die Felder PAYPAL_ACCOUNT und CREDITCARD_ACCOUNT ID. –
Ich habe dieses Konzept bereits berücksichtigt, aber ich mag die Idee, Nullen zu akzeptieren, nicht und habe sie in allen anderen Tabellen der DB vermieden. Die Zahlungsmethoden müssen eine Beziehung mit KUNDEN und AUFTRAG haben. Es geht mir gut, wenn ich cust_id in einer Tabelle wiederhole, wenn sie mehrere Karten/Paypal-Konten haben. @TomEsch –