Equivalent de la fonction mysql last_insertid() sur SQL Server
2 réponses
Pat
Bonjour
Existe-t-il l'équivalent de la fonction last_insertid() dans SQL Server, c'est-à-dire un moyen de récupérer la valeur de la clé primaire (int avec contrainte identity) nouvellement créée lors d'un insert
En clair, j'insers un jeu de valeurs dans une table située sur une base extérieure (sur laquelle je n'ai pas la main) et je veux récupérer l'identity créé pour cet insert (appellons-le intUserID) pour l'insérer dans une autre table (située sur le serveur local, ce coup-ci), qui contiendra des valeurs complémentaires linkées à cet intUserID
Je débute sur SQL Server et la doc est un peu mal ficelée :-
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Nicolas LETULLIER
Bonjour,
Exemple détaillé :
DECLARE @NouvelId INT
INSERT INTO MaPremiereTable (Champ2, Champ3) VALUES ('Valeur2','Valeur3') -- On n'insère bien sûr pas de valeur dans Champ1 qui est déclaré en IDENTITY
SET @NouvelId = @@IDENTITY
INSERT INTO MaDeuxiemeTable (CleEtrangere) VALUES (@NouvelId)
Nicolas.
"Pat" a écrit dans le message de news:
Bonjour,
Existe-t-il l'équivalent de la fonction last_insertid() dans SQL Server,
c'est-à-dire un moyen de récupérer la valeur de la clé primaire (int avec contrainte identity) nouvellement créée lors d'un insert ?
En clair, j'insers un jeu de valeurs dans une table située sur une base
extérieure (sur laquelle je n'ai pas la main) et je veux récupérer l'identity créé pour cet insert (appellons-le intUserID) pour l'insérer dans une autre table (située sur le serveur local, ce coup-ci), qui contiendra des valeurs complémentaires linkées à cet intUserID.
Je débute sur SQL Server et la doc est un peu mal ficelée :-(
Bonjour,
Exemple détaillé :
DECLARE @NouvelId INT
INSERT INTO MaPremiereTable (Champ2, Champ3) VALUES ('Valeur2','Valeur3')
-- On n'insère bien sûr pas de valeur dans Champ1 qui est déclaré en
IDENTITY
SET @NouvelId = @@IDENTITY
INSERT INTO MaDeuxiemeTable (CleEtrangere) VALUES (@NouvelId)
Nicolas.
"Pat" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:78609279-2862-416F-B06C-5E7E8F4CC48F@microsoft.com...
Bonjour,
Existe-t-il l'équivalent de la fonction last_insertid() dans SQL Server,
c'est-à-dire un moyen de récupérer la valeur de la clé primaire (int avec
contrainte identity) nouvellement créée lors d'un insert ?
En clair, j'insers un jeu de valeurs dans une table située sur une base
extérieure (sur laquelle je n'ai pas la main) et je veux récupérer
l'identity créé pour cet insert (appellons-le intUserID) pour l'insérer
dans une autre table (située sur le serveur local, ce coup-ci), qui
contiendra des valeurs complémentaires linkées à cet intUserID.
Je débute sur SQL Server et la doc est un peu mal ficelée :-(
INSERT INTO MaPremiereTable (Champ2, Champ3) VALUES ('Valeur2','Valeur3') -- On n'insère bien sûr pas de valeur dans Champ1 qui est déclaré en IDENTITY
SET @NouvelId = @@IDENTITY
INSERT INTO MaDeuxiemeTable (CleEtrangere) VALUES (@NouvelId)
Nicolas.
"Pat" a écrit dans le message de news:
Bonjour,
Existe-t-il l'équivalent de la fonction last_insertid() dans SQL Server,
c'est-à-dire un moyen de récupérer la valeur de la clé primaire (int avec contrainte identity) nouvellement créée lors d'un insert ?
En clair, j'insers un jeu de valeurs dans une table située sur une base
extérieure (sur laquelle je n'ai pas la main) et je veux récupérer l'identity créé pour cet insert (appellons-le intUserID) pour l'insérer dans une autre table (située sur le serveur local, ce coup-ci), qui contiendra des valeurs complémentaires linkées à cet intUserID.
Je débute sur SQL Server et la doc est un peu mal ficelée :-(