Question
Je voulais juste avoir des opinions sur les clés primaires - serait-il préférable d'utiliser des numéros d'identité / de séquence ou d'utiliser une stratégie HiLo (interroger la valeur la plus élevée et incrémenter la valeur la plus basse sur l'application elle-même)?
La solution
Si votre application n'utilisera qu'une seule base de données, j'utiliserais une identité / séquence.
La seule raison vraiment convaincante d’utiliser HiLo que j’ai vue, c’est lorsque vous pouvez avoir deux instances déconnectées de votre application sur lesquelles les utilisateurs peuvent travailler simultanément et que vous devez réconcilier les différences à un moment donné
Ex . Vous travaillez sur un système de gestion de contenu sur lequel des personnes pourraient travailler sur deux serveurs différents situés à des emplacements différents, mais les deux devant être synchronisés à un moment donné
Autres conseils
Si vous utilisez SQL Server 2005/2008 avec une table volumineuse (> 1 million de lignes), vous pouvez envisager this , qui renvoie à this . Il y a un problème avec scope_identity () et @@ identity dans certaines circonstances.
Bien entendu, la résolution du problème de la mise en œuvre actuelle n’est pas toujours la décision la plus sage.