Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Utilisation de OUTPUT après INSERT pour obtenir la valeur de la colonne d'identité dans une variable (valeur non table)

N'oubliez pas que la valeur de la clause de sortie est qu'elle peut renvoyer plusieurs enregistrements et plusieurs champs. Ainsi, vous pouvez générer à la fois la clé naturelle et l'identité d'un ensemble de données afin que vous puissiez également utiliser la théorie des ensembles pour insérer plusieurs enregistrements dans des tables enfants. La sortie est très puissante et il faudra s'habituer à l'utiliser.

Il y a actuellement un bogue dans scope_identity() (voir lien :http://connect.microsoft.com/SQLServer/feedback/details/328811/scope-identity-sometimes-returns-incorrect-value ) que Microsoft n'a pas l'intention de corriger. Cela devrait vous donner une idée quant à savoir si vous devez utiliser la sortie pour un nouveau développement, même si c'est un peu plus compliqué pour les enregistrements uniques.