Récupérer l'identifiant auto à l'insertion sous sq
raoul
-
JeanMouloude -
JeanMouloude -
Je cherche à récupérer l'ID automatique (identity) sous sql server lors de l'insertion d'un record par un recordset. Je ve récupérer l'ID généré automatiquement. Je travaille dans des scripts ASP.
Merci de m'aider
Merci de m'aider
8 réponses
-
Pour SQL Server, c'est @@IDENTITY
Exemple:
INSERT INTO matable (nom, prenom) VALUES ('dupont','jean')
print @@IDENTITY
-
-
Je ne sais pas s'il y a une autre solution, mais c'est lourd !
Sous MySQL tu fais appel à "mysql_insert_id()"... plus simple.
-= Bobinours =- -
Attention ! La méthode SELECT MAX(ID) est risquée dans le cas où plusieurs utilisateurs saisissent des données simultanément.
Si le but est de mettre à jour des zones avec cette valeur, peut-être qu'un trigger peut faire l'affaire ? Je ne connais pas sql server mais cela doit être possible...
Tittom -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
manu... comment a tu fait pour devenir profesionel ? Je trouve ça horrible de voir le nombre de personne incompetante dans ma profession :|... @+
-
bonsoir tout le monde ,mon problème à moi consiste à récuperer un identifiant mais pas forcement le dernier ou le premier.y aurai t'il un moyen de réaliser celà si c'est pas le cas ,j'aimerai au moins connaitre celui du dernier
.merci pour votre attention-
Tout depend de ta base de donné mais en general l'identifiant permet de selection et pas l'inverse.
cepandant si tu pense que les autres attributs cumulé peuvent etre assez caracteritiques tente une requetes du type :
select ID
from TABLE
where attr1 = 'valeur1'
and attr2 ='valeur2'
...
bie sur si tu as des doublons dans ta base tu es cuit...
-
-
je suis dévelopeur professionnel, et nous utilisons dans notre société la technique suivante.
juste après ton insertion, tu refais une requête SQL
en demandant le champ ID max et il te donnera le dernier inséré :)
select max(ID) From tatable