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

Valeur de clé primaire après l'insertion d'une ligne dans SQL Server 2005

Bien sûr - utilisez le SCOPE_IDENTITY() si votre ID la colonne est une INT IDENTITY - uniquement qui vous donnera les bons résultats !

La première approche avec le MAX(ID) échouera terriblement si plusieurs clients insèrent des lignes presque en même temps - vous obtiendrez de faux résultats. Ne l'utilisez pas !

La troisième approche peut échouer si une autre entrée avec les mêmes valeurs pour E-Mail et nom existe déjà.

Aussi, en passant :vous ne devriez jamais utilisez sp_ comme préfixe ! Il s'agit d'un préfixe réservé à Microsoft et qui présente des inconvénients en termes de performances ; utilisez autre chose.