1

ich auf einer Bankanwendung arbeite in dem ein Kunde mehrere Konten für verschiedene Produkttypen wie öffnen: Versicherungen, Investment- und Renten usw.Datenbankschema für Profil und Auftrag

Jeder Kunde hat ein Profil, und wir sparen Diese Informationen in 12 verschiedenen Tabellen wie: Personal, Kontakt, Adresse, Zugehörigkeit, Finanzen, Investitionen, Asset, Haftung, NetWorth und so weiter.

Jetzt um jedes Konto zu öffnen, müssen wir die gleiche Art von Informationen wie für das Kundenprofil sammeln und speichern, aber wir können das Kundenprofil damit nicht überschreiben, da wir jede Konteninformation verfolgen müssen, wenn sie an den Punkt übermittelt wird öffne dich.

Also in Bezug auf die Lösung denken wir entweder Replik dieser 12 Tabellen für jedes Konto zu haben oder die JSON für jede Tabelle in nur einer Tabelle zu speichern, die 12 Spalten für jede der obigen Tabelle hat und die UI damit füllen.

Kann jemand, wenn vorherige Erfahrung haben uns vorschlagen, wie dies auf die beste Weise zu tun.

Antwort

1

Ich würde bestimmen, welche Informationen zwischen den Konten nicht geändert werden. Zum Beispiel name, birthday, ssn usw. Diese konstanten Felder können eine Tabelle mit der Bezeichnung customers bilden. Wenn keine konstanten Felder vorhanden sind, können Sie eine Platzhalter-ID verwenden, mit der Konten einfach demselben Benutzer zugeordnet werden können.

Ich würde auch eine Tabelle für Accounts erstellen und verwenden Sie die account_id als Fremdschlüssel für alle Ihre Kundeninformationen, die zwischen Konten wechseln können. Jede Zeile in der Accounts Tabelle wird von einem customer von zuvor gehört.

So wäre die Beziehung zwischen Kunden und Konten eins zu viele, und die Beziehung zwischen Konten und "kontospezifischen Kundeninformationen" wäre eins zu eins.

+0

Danke für die Antwort, aber gemäß meiner Anforderungen Informationen des Kundenprofils und des Kontoprofils sollten separat gespeichert werden. Mein Hauptanliegen ist es, den folgenden Ansatz zu verwenden: 1) Erstellen Sie ein paralleles Schema für das Kontoprofil wie das Kundenprofil. 2) Speichern des JSON/XML für jede Tabelle in einer anderen Spalte, die sich als Kontoprofil ändert, so lange, bis sie nicht mehr übergeben wird. – ChupChapCharli

+0

Ich würde mich darauf konzentrieren, JSON oder XML nicht in der Datenbank zu speichern. Es erfordert mehr externe Verarbeitung und macht es schwierig, eine normalisierte Datenbank zu erstellen. Was meinen Sie mit "getrennt speichern?" Muss die Information in getrennten Tabellen sein? Ich würde denken, dass Sie einfach die Zeilen mit einer "Informationstyp" -Variablen identifizieren und alle Informationen in derselben Tabelle speichern könnten. – Michael

+0

Ja, Informationen müssen in separaten Tabellen sein. Es gibt kein einziges Feld für dieselbe Art von Information. Wenn ich den JSON jeder Tabelle in der Spalte nicht speichere, muss ich 12 parallele Tabellen erstellen und jedes Mal, wenn das Schema der Haupttabelle geändert wird, muss ich auch die parallele Tabelle ändern. – ChupChapCharli