A voir également:
- Insertion et modification d'un tuple
- Suivi de modification word - Guide
- Logiciel modification pdf gratuit - Guide
- Insertion liste déroulante excel - Guide
- Insertion signature word - Guide
- Insertion sommaire word - Guide
6 réponses
zucrezel
Messages postés
30
Date d'inscription
mardi 7 février 2017
Statut
Membre
Dernière intervention
19 juillet 2017
4
24 févr. 2017 à 17:23
24 févr. 2017 à 17:23
Bonjour,
Il semblerait que tu passes plusieurs fois dans ton code qui fait l'insert.
Duplicate entry '30001459-1008' for key 'PRIMARY'' indique que tes clés primaires IdEtudiant-IdUE existent déjà dans la BDD, donc l'insert te sort l'erreur car tu as déjà une ligne avec IdEtudiant=30001459 et avec IdUE = 1008.
Rajoute une condition pour faire ton insert qu'une seule fois.
Il semblerait que tu passes plusieurs fois dans ton code qui fait l'insert.
Duplicate entry '30001459-1008' for key 'PRIMARY'' indique que tes clés primaires IdEtudiant-IdUE existent déjà dans la BDD, donc l'insert te sort l'erreur car tu as déjà une ligne avec IdEtudiant=30001459 et avec IdUE = 1008.
Rajoute une condition pour faire ton insert qu'une seule fois.
zucrezel
Messages postés
30
Date d'inscription
mardi 7 février 2017
Statut
Membre
Dernière intervention
19 juillet 2017
4
24 févr. 2017 à 17:59
24 févr. 2017 à 17:59
Encore mieux: au lieu du insert utilises REPLACE, si la ligne n'existe pas elle est créée et si elle existe elle est mise à jour :
ça devrait lever ton erreur. Sinon, joints ton code en utilisant la balise code associée.
REPLACE INTO notes
SET Note= ‘12′,
IdEtudiant = '30001459',
IdUE = '1008'
ça devrait lever ton erreur. Sinon, joints ton code en utilisant la balise code associée.
Merci mille fois de tes réponses !
Le soucis c'est que je dois clairement distinguer l'insertion de la modification dans mon devoir
Le soucis c'est que je dois clairement distinguer l'insertion de la modification dans mon devoir
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
zucrezel
Messages postés
30
Date d'inscription
mardi 7 février 2017
Statut
Membre
Dernière intervention
19 juillet 2017
4
Modifié par zucrezel le 24/02/2017 à 18:24
Modifié par zucrezel le 24/02/2017 à 18:24
dans ce cas quand tu fais l'insert, récupère l'id créé :
mais pour cela il faut que tu ais un champ AUTO_INCREMENT comme clé primaire.
$last_id = $bd->lastInsertId();
et avant de faire le insert tu rajoutes :
if(!$last_id){
//code insert
}else{
//code update
}
mais pour cela il faut que tu ais un champ AUTO_INCREMENT comme clé primaire.