Der Fremdschlüssel sollte nicht zur Entität führen, sondern zur aktuellen Version dieser Entität

Angenommen, Sie sind für die Verbesserung der Straßen verantwortlich. Die Firma "Peter and Sons" hat mit Ihnen eine Vereinbarung zum Bemalen des Zauns unter folgender Adresse unterzeichnet: Kuibyshev, Starokolpaksky perulok, 1.

Gleichzeitig wird die Vereinbarung auf Datenbankebene mit der Adresse und dem Unternehmen verknüpft .





Fünf Jahre später starb Peter. Peters Söhne setzen seine Dynastie fort (Malerei von Zäunen).





Jetzt heißt das Unternehmen, mit dem der Vertrag unterzeichnet wurde, "Boris and Denis". Zur gleichen Zeit wurde die Stadt Kuibyshev Samara genannt. Wenn Sie nun nach einem Dokument suchen, um einen Steuerabzug zu erhalten, ist es unwahrscheinlich, dass Sie es finden. Ihr Programm zeigt, dass die Firma Boris and Denis auf Ihre Anweisung hin einen Zaun in der Stadt Samara gestrichen hat.





Um solche Vorfälle zu vermeiden, müssen alle Versionen von Objekten, einschließlich veralteter, in der Tabelle gespeichert werden. In Bezug auf das Adressensystem hilft Ihnen FIAS dabei, es tut genau das (dort speichert jeder Datensatz über das Adressobjekt die AOID-Kennung - dies ist die Kennung einer bestimmten Version des Objekts, und die AOGUID-Kennung ist die Kennung des Adressobjekts als Ganzes, die sich nicht ändert, wenn das Objekt umbenannt oder neu zugewiesen wurde. Ein ähnliches System gibt es meines Erachtens nicht nur für Adressen, sondern auch für Eigenschaften jemals registrierter juristischer Personen.





Fremdschlüssel in Gebärdensprache, Bild von corchaosis.ru
Fremdschlüssel in Gebärdensprache, Bild von corchaosis.ru

Fremdschlüssel in Ihrer Datenbank sollten nicht von Dokumenten zu einem Objekt führen, sondern zu einer bestimmten, zum Zeitpunkt ihrer Erstellung tatsächlichen Version jedes Objekts.





Andernfalls berechnet Ihr Bankensystem den Kunden einen höheren Prozentsatz, da sie nicht an der Adresse wohnen, die auf dem Stempel in ihrem Reisepass angegeben ist. Aber in Wirklichkeit ist dies dieselbe Straße, die früher anders genannt wurde. Und so weiter.








All Articles