Recupere last_insert_id avec mysql en csharp

Signaler
Messages postés
666
Date d'inscription
dimanche 16 décembre 2007
Statut
Membre
Dernière intervention
11 mars 2010
-
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
-
Bonjour

Quelqu'un  sait-il comment depuis cSharp je peux utiliser la commande

select Last_insert_id() de mysql

Pour recuperer cet ID

3 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
86
Salut,

Heu, c'est une requête comme une autre, je ne vois pas bien où est la difficultée.
Soit le batch ne doit retourner que ça et donc une construction "INSERT ....; SELECT Last_insert_id()" couplé à un ExecuteScalar (ou ExcuteReader etc) suffira, sinon avec un paramètre en OUTPUT.

/*
coq
MVP Visual C#
CoqBlog
*/
Messages postés
666
Date d'inscription
dimanche 16 décembre 2007
Statut
Membre
Dernière intervention
11 mars 2010
4
Salut Coq


1ere erreur : Je faisais un executenonquery !! : ca pouvait pas marcher !!


2eme constat : le retour est un int64 alors que mon id est defini int en mysql


 
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
86
Le type de retour ne me choque pas plus que ça, et c'est logique vu qu'une colonne auto incrémentée peut sans problème être définie en bigint (au l'équivalent MySQL si différent).
Sous SQL Server SCOPE_IDENTITY & co retournent du numeric.

/*
coq
MVP Visual C#
CoqBlog
*/