Einzelnen Beitrag anzeigen

Benutzerbild von IBExpert
IBExpert
Online

Registriert seit: 15. Mär 2005
646 Beiträge
 
FreePascal / Lazarus
 
#10

AW: Diskussion IBExpert, Firebird 2.5 und UUID als PK

  Alt 26. Jul 2014, 19:40
Hallo,
wenn ich es richtig verstanden habe, setzt es voraus dass die Filiale eindeutig ist wegen dem Offset.
In meinem Fall ist das ein Problem. Natürlich wird es eine Vorgaben geben vom Konzern dass die
Version nicht kopieren werden darf um Konflikte zu meiden.
Ich hab so ein wenig Schweirigkeiten zu verstehen, was du mit den Bgriffen Filiale und Version
assoziierst.

Wenn ein Datensatz x auf der db 1 entstanden ist, bekommt der z.B. die id 1.000.000.000.1 und behält
die auch bis in alle Ewigkeit auf allen Datenbankinstanzen, in denen die Daten hineinkopiert werden.

Die Problematik, das jemand die db kopiert und dann von 2 zwei unterschiedlichen Rechnern weiter benutzt,
ist durchaus nicht unkritisch und ob du es glaubst oder nicht, genau so bei uns im Projekt mit den Maklern
genau so aufgetaucht.

Lösung: Du musst in der DB irgendeine hardwarespezifische Information hinterlegen, an der deine
Software erkennt, das es sich um eine Kopie handelt und damit der Offset ungültig ist und ab dem
Zeitpunkt dann zum Beispiel wieder im Defaultbereich neue Datensätze erfasst werden und die dann
wieder bei einer Synchronisation um einen neue Offset angehoben werden. Wenn das USB Sticks sind,
dann reicht normalerweise schon die Hardwareseriennummer des USB Sticks oder ggf sogar die
Partitionsnummer.

Das gibt zwar keine Garantie der Eindeutigkeit, ist aber auch nicht so wichtig, weil man ja nur den
Wechsel erkennen will.


@Holger, die UUID würde ich für dieses Projekt nicht benutzen
aber grundsätzlich wäre das eine sehr nützliche Funktion dass UUID Felder vom Typ
Octets automatisch konvertiert werden.
wir arbeiten dran
Holger Klemt
www.ibexpert.com - IBExpert GmbH
Oldenburger Str 233 - 26203 Wardenburg - Germany
IBExpert and Firebird Power Workshops jederzeit auch als Firmenschulung
  Mit Zitat antworten Zitat