Hallo zusammen,
mein Problem geht in eine ähnliche Richtung. Ich habe Daten an mehreren Standorten. Nun sollen am Zentralstandort alle Daten auf dem
MsSQL-Server liegen. Z.B. durch abendlichen Abgleich. Die Tabellen sind jetzt schon mit einem ID = Integer-Feld ausgestattet und zusätzlich mit der Standortkennung ServORT = char(1). Nun sehe ich zwei Möglichkeiten:
die ID-Felder durch den Typ uniqueidentifier belegen
einen zusammengesetzten Primary-Key verwenden
Bei dem Typ uniqueidentifier fehlt mir, dass Übersichtlichkeit verloren geht, wenn man mal schnell mit den Rohdaten arbeitet. Eine 3-, 4- oder auch 5-stellige Zahl kann man sich ja noch merken, aber bei einem Uniqueidentifier-Feld (z.B. {5B95B455-C0EE-4109-A7C1-3A02D7015D92}) ist das unmöglich. Und manchmal, bei der Fehlersuche, ist es eben doch hilfreich, wenn man die Daten noch lesen kann.
Welche Probleme sind aber bei vielen Master-Detailverbindungen zu erwarten?
Spielt es für die Verarbeitungszeit eine Rolle, in welcher Folge ich den Primary-Key bilde (also primary key(ServOrt, ID) oder besser primary key(ID, ServOrt)?
Gibt es u.U. Probleme mit anderen Datenbanken als
MsSQL, z.B. mit FireBird oder
MySQL?
Welche Empfehlungen gebt ihr für sowas, wenn man die Tabellen neu aufbauen würde?