Sql: insert dans plusieurs tables liées
angel lestat
Messages postés
256
Statut
Membre
-
angel lestat Messages postés 256 Statut Membre -
angel lestat Messages postés 256 Statut Membre -
Bonjour à la communauté informatique,
je voudrais exposer mon problème:
J'ai conçu un formulaire pour stocker le profil d'un individu dans ma base de données
En effet je dispose de deux tables:
user(id_user, nom, prenom) et
diplome(id_dipl,titre,description,diplome_user)
id_user et id_dipl sont clef primaires dans leurs tables respectives et sont auto_increment
diplome_user clef étrangère qui fait le lien entre les deux tables;
le formulaire contient les champs pour remplir les deux tables
je voudrais qu'a la soumission on fasse une insertion simultanée dans les deux tables
il serait simple de faire 2 insert mais le problème est que je voudrais avoir dans le champ diplome_user l'id_user de l'utilisateur correspondant.
j'ai eu à lire sur des topic de faire insert select mais j'ai pas pu appliquer.
<?php
insert into user values('','$_POST["nom"]','$_POST["prenom"]');
inset into diplome values('','$_POST["titre"],'$_POST["description"]','select max(id_user) from user');
?>
mais je suis convaincu que la deuxième requête est totalement nulle, je vous prie de bien vouloir m'aider
merci
je voudrais exposer mon problème:
J'ai conçu un formulaire pour stocker le profil d'un individu dans ma base de données
En effet je dispose de deux tables:
user(id_user, nom, prenom) et
diplome(id_dipl,titre,description,diplome_user)
id_user et id_dipl sont clef primaires dans leurs tables respectives et sont auto_increment
diplome_user clef étrangère qui fait le lien entre les deux tables;
le formulaire contient les champs pour remplir les deux tables
je voudrais qu'a la soumission on fasse une insertion simultanée dans les deux tables
il serait simple de faire 2 insert mais le problème est que je voudrais avoir dans le champ diplome_user l'id_user de l'utilisateur correspondant.
j'ai eu à lire sur des topic de faire insert select mais j'ai pas pu appliquer.
<?php
insert into user values('','$_POST["nom"]','$_POST["prenom"]');
inset into diplome values('','$_POST["titre"],'$_POST["description"]','select max(id_user) from user');
?>
mais je suis convaincu que la deuxième requête est totalement nulle, je vous prie de bien vouloir m'aider
merci
A voir également:
- Sql: insert dans plusieurs tables liées
- Logiciel sql - Télécharger - Bases de données
- Requete sql pix ✓ - Forum MySQL
- Sql lister les tables ✓ - Forum Programmation
- Récupération serveur sql - Télécharger - Gestion de données
- Migration base access vers sql server - Télécharger - Gestion de données
4 réponses
Il existe apparemment une méthode pour récupérer le dernier id inséré.
source : https://fernvale.wordpress.com/2007/05/06/last-inserted-id-in-mysql/
select last_insert_id();
source : https://fernvale.wordpress.com/2007/05/06/last-inserted-id-in-mysql/