Frage
Ich wollte nur ein paar Meinungen zum Primärschlüssel bekommen - es wäre besser, Identität / Sequenznummern zu verwenden oder eine HiLo Strategie verwenden (Abfrage für den hohen Wert und den niedrigen Wert auf der App selbst erhöhen)
?Lösung
Wenn Ihre Anwendung nur wird eine Datenbank zu verwenden, habe ich mit einer Identität / Sequenz gehen würde.
Der einzigen wirklich zwingende Grund mit HiLo zu gehen, dass ich gesehen habe, ist, wenn Sie zwei getrennte Instanzen Ihrer Anwendung haben könnten, dass die Menschen gleichzeitig arbeiten können, und Sie müssen die Unterschiede an einem gewissen Punkt in Einklang zu bringen
Ex . Sie arbeiten an einem Content-Management-System, wo die Menschen auf zwei verschiedenen Servern an verschiedenen Standorten arbeiten könnte aber die beiden müssen irgendwann werden synchronisierten
Andere Tipps
Wenn Sie SQL Server verwenden 2005/2008 mit einem großen Tisch (> 1 Million Zeilen), können Sie zu prüfen, diese , die diese . Es gibt ein Problem mit scope_identity () und @@ identity unter bestimmten Umständen.
Natürlich eine aktuelle Implementierung Problem rund um die Gestaltung ist nicht immer die klügste Entscheidung.