Quelqu'un peut-il me dire s'il existe un équivalent de l' SCOPE_IDENTITY()
utilisation de GUID comme clé primaire dans SQL Server?
Je ne veux pas créer le GUID en premier et l'enregistrer en tant que variable car nous utilisons des GUID séquentiels comme clés primaires.
Une idée de la meilleure façon de récupérer la dernière clé primaire GUID insérée?
OUTPUT
clause donne une erreur sur toute table qui a un déclencheur d'insertion attaché.Il n'y a pas d'équivalent SCOPE_IDENTITY () lors de l'utilisation de GUID comme clés primaires, mais vous pouvez utiliser la clause OUTPUT pour obtenir un résultat similaire. Vous n'avez pas besoin d'utiliser une variable de table pour la sortie.
L'exemple ci-dessus est utile si vous souhaitez lire la valeur d'un client .Net. Pour lire la valeur de .Net, utilisez simplement la méthode ExecuteScalar.
la source
vous voulez utiliser NEWID ()
mais le problème d'index cluster est là dans GUID. Lisez celui-ci aussi NEWSEQUENTIALID () . Ce sont mes idées, réfléchissez avant d'utiliser GUID comme clé primaire . :)
la source
la source
En utilisant ce fil comme ressource, j'ai créé ce qui suit à utiliser dans un déclencheur:
Pourrait aider quelqu'un d'autre à faire la même chose. Curieux de savoir si quelqu'un a quelque chose de négatif à dire en termes de performances si ce n'est pas une bonne idée ou non.
la source