Ich habe Tabellen wie Customer
, Purchase
usw., die manchmal mit ihnen verbunden sind Dokumente, durch Dokumente meine ich einige Datei irgendwo (wie ein gescanntes Führerschein oder etwas)ist das Hinzufügen von reservierten Felder für zukünftige Werte eine gute Idee
Wir kann nicht die Anwendung diese Dokumente direkt in der Datenbank habe ich für diese eine unique~~POS=TRUNC Spalte so stattdessen laden haben
Meine Frage (Sollte ich stattdessen einen Dateihash haben?):
In Zukunft könnten wir mehrere Dokumente mit einem in Verbindung gebracht Tabelle, so dachte ich über das Hinzufügen von zusätzlichen Feldern wie:
Kunden
+ DriversLicenseDoc
+ Document1 // für die Zukunft
+ Document2 // zukünftige Verwendung
So in der Zukunft, wenn sie sich entscheiden, sie ein anderes Dokument möchte ich nur haben Aktualisieren Sie mein Entity-Framework-Modell und benennen Sie die Spalte in meinem Modell um und die Datenbank muss sich nicht ändern?
Ist das so allgemein gemacht? Irgendwelche besseren Ideen? Die Kehrseite, die ich sehe, ist, dass ich all diese zukünftigen Werte für null halten muss? Vielleicht ist das kein Nachteil?
Möchten Sie auch wissen, wie Sie mit Änderungen im Datenbankschema nach der Bereitstellung im Allgemeinen zurechtkommen?
Ich stimme irgendwie zu, aber ich denke, es ist wahrscheinlich besser zu "erkennen", dass Sie Flexibilität in einer Weise brauchen, die Sie nicht zuerst in Betracht ziehen, und dann möglicherweise leicht neu zu gestalten, um die 'reservierte' Struktur zu berücksichtigen . Ich denke nicht, dass es falsch ist, für die Zukunft zu planen (und ich bin mir sicher, dass Sie das auch nicht tun, aber es ist einfach nicht klar in Ihrer Antwort). –
Nicht ganz sicher, was Sie meinen, _add sie wie sie sein sollen _ da ich von den Kunden gesagt wurde, haben wir vielleicht bis zu 5 oder 6 Dokumente in der Zukunft (sie haben keine Scanner, so dass sie nicht wirklich alle Dokumente jetzt aufzeichnen)) – gideon
"mit jedem Dokument in der Tabelle, das den Dokumententyp und die Dokumentennutzlast" ... und den Kundenschlüssel enthält;) – Lazarus