Recuperer le numero auto d'un champ apres ajout

Soyez le premier à donner votre avis sur cette source.

Snippet vu 12 062 fois - Téléchargée 37 fois

Contenu du snippet

Permet de recuperer la valeur d'un champ numero auto après ajout d'un enregistrement.
Très utile si l'on désire utiliser la valeur recuperee pour une autre operation.Par exemple concatener ce champ et un autre pour une mise à jour.

Source / Exemple :


dim req
dim varr
dim sar
 set conn=server.createobject("adodb.connection")
  conn.open "nom_du_dsn"

'Requete ajout ou methode Addnew...Update
  req="Requete_d'ajout_d'enregistrement;"
  var=conn.execute (req) 'execution requete

'recuperation du champ numero auto  
  rst="select max(Champ_numeroauto) from  
  nom_de_table;"
  set sar=conn.execute (rst) 'execution requete

  recup=rst.fields("Champ_numeroauto")

Conclusion :


Marche avec une requete SQL(insert into) ou apres avoir utilise la methode Addnew...Update.

A voir également

Ajouter un commentaire Commentaires
t'as methode est rigolote mais apres un addnew et un update on peur faire directement :
rs.addnew
rs("..") = ".."
rs.update
recup=rs("Champ_numeroauto")
rs.close
et voila on a ganer une ouverture de base
cs_Yopyop Messages postés 586 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 10 février 2010 1
8 janv. 2002 à 04:52
Non seulement on gagne une connection, mais en plus son code ne fonctionne pas toujours...
En effet, admettons qu'il y ait deux requêtes en +- même temps... il se peut que le truc se mélange les pinceaux et inverse les nouvelles ids...

Quand à la 2ème soluce, elle fonctionne bien pour autant que l'on utilise le bon curseur de BD :)
cs_Futura Messages postés 8 Date d'inscription samedi 1 février 2003 Statut Membre Dernière intervention 2 novembre 2003
11 juil. 2003 à 09:47
Une fois cette valeur récupéré, comment puis-je la stocker dans une variable globale à toutes les frames jusqu'à la fin de la connexion ?

Merci de votre aide
vignot Messages postés 1 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 3 octobre 2003
3 oct. 2003 à 12:20
Salut,

je comprend pas trop l'histoire du rs("..") = ".." ...
en tout cas je sais que sur MS Sql Server on peut accéder à une variable @@IDENTITY qui contient l'AutoInc du dernier insert.
C'est fait exprès, on est sur que "le truc" ne se mélange pas les pinceaux comme dit YopYop.
Pour info @@ROWCOUNT "Returns the number of rows affected by the last statement." comme le dit la doc.
Goldeneye007 Messages postés 70 Date d'inscription mercredi 7 décembre 2005 Statut Membre Dernière intervention 9 juillet 2010
13 févr. 2006 à 11:19
J'ai un problème il me dit que rs n'est pas déclaré il faut ajouter un élément?

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.