J'ai vu différentes méthodes utilisées pour récupérer la valeur d'un champ d'identité de clé primaire après insertion.
declare @t table (
id int identity primary key,
somecol datetime default getdate()
)
insert into @t
default values
select SCOPE_IDENTITY() --returns 1
select @@IDENTITY --returns 1
Renvoi d'une table d'identités à la suite d'un encart :
Create Table #Testing (
id int identity,
somedate datetime default getdate()
)
insert into #Testing
output inserted.*
default values
Quelle est la méthode la plus appropriée ou la meilleure ? La méthode OUTPUT est-elle sans danger pour le champ d'application ?
Le deuxième extrait de code a été emprunté à SQL dans la nature