Précédent   Forum des professionnels en informatique > Bases de données > MySQL > SQL Procédural
SQL Procédural Forum d'entraide sur les triggers, les procédures stockées et les fonctions en MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/07/2007, 15h24   #1
Membre du Club
 
Inscription : mars 2005
Messages : 217
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : mars 2005
Messages : 217
Points : 54
Points : 54
Par défaut Récupérer la clé autoincrement lors d'un insert

Bonjour,

Je suis en PH et j'attaque une BD Mysql. Dans ma table, la clé est un champ auto-incrémenté.
Je fais plusieurs insert dans ma table et je voulais savoir si on pouvait récupérer automatiquement la clé qui a été généré lors de mon insert.
Si oui, comment ?
Merci.

Jérôme
jejeman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2007, 15h36   #2
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Citation:
Envoyé par jejeman
Bonjour,

Je suis en PH et j'attaque une BD Mysql. Dans ma table, la clé est un champ auto-incrémenté.
Je fais plusieurs insert dans ma table et je voulais savoir si on pouvait récupérer automatiquement la clé qui a été généré lors de mon insert.
Si oui, comment ?
Merci.

Jérôme
LAST_INSERT_ID(); Te donnera la dernière clé crée.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2007, 15h37   #3
Membre chevronné
 
Avatar de pop_up
 
Inscription : avril 2006
Messages : 833
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : avril 2006
Messages : 833
Points : 690
Points : 690
regarde last_insert_id(expr)

pop_up est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2007, 16h11   #4
Membre du Club
 
Inscription : mars 2005
Messages : 217
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : mars 2005
Messages : 217
Points : 54
Points : 54
Merci.
Mais bon si j'ai une autre requete qui passe derrière, ca ne me garantie pas de retrouver mon ID.
J'aurais aimé que la fonction insert à travers PHP me renvoi quelquechose...
Tant pis !
Merci quand même !
jejeman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2007, 16h45   #5
Membre chevronné
 
Avatar de pop_up
 
Inscription : avril 2006
Messages : 833
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : avril 2006
Messages : 833
Points : 690
Points : 690
tu peux faire une fonction de ce style:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
DROP FUNCTION IF EXISTS FCT_NEW_ID;
 
CREATE FUNCTION FCT_NEW_ID ()
RETURNS INT
 
 
BEGIN
 
DECLARE v_id INT;
 
SELECT  MAX(id_de_ta_table)
INTO    v_id
FROM    TA_TABLE;
 
 
RETURN v_id;
END;
pop_up est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2007, 17h26   #6
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Citation:
Envoyé par jejeman
Merci.
Mais bon si j'ai une autre requete qui passe derrière, ca ne me garantie pas de retrouver mon ID.
J'aurais aimé que la fonction insert à travers PHP me renvoi quelquechose...
Tant pis !
Merci quand même !
Tu stock l'information temporairement ou dans un tableau.
__________________
Mon avatar ? Ce n'est rien, c'est juste la tête que je fais lorsque je vois un code complètement frappa dingue !...
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2007, 17h28   #7
Membre du Club
 
Inscription : mars 2005
Messages : 217
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : mars 2005
Messages : 217
Points : 54
Points : 54
OK merci
je vais creuser la dessus...
jejeman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/07/2007, 19h47   #8
Invité de passage
 
Inscription : février 2007
Messages : 5
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 5
Points : 3
Points : 3
Bonsoir,

Peut être que ceci te conviendrai : mysql_insert_id()
Code :
my_ulonglong mysql_insert_id(MYSQL *mysql)
Matt...
matt42 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h10.


 
 
 
 
Partenaires

Hébergement Web