|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre confirmé
![]() Inscription : octobre 2007 Messages : 676 ![]() |
Bonjour,
je copie une ligne d'une table "TABLE" dans une table temporaire "TABLETEMP". Ensuite, je modifie la ligne dans ma table temporaire via une requête. Je souhaite enfin supprimer la ligne de ma table "TABLE" et insérer dans la table "TABLE" la ligne de la table temporaire pour avoir les modifications dans la bonne table. Je fais donc ces requêtes : Code :
J'ai essayé de faire mes requêtes une à une dans phpmyadmin, aucun problème. J'ai fait des echo de chaque requête, elles sont bonnes. Aucune erreur n'est détectée. Est-ce que vous avez une idée ? Merci ! |
||
|
|
00
|
|
|
#2 |
![]() ![]() Gérard ErnaelstenDBA & Dev PHP Inscription : juin 2005 Messages : 3 174 ![]() |
on peut vois la structure de TABLE ?
__________________
Il faut toujours viser la lune, car même en cas d'échec on arrive dans les étoiles. O.Wilde Mes Articles/Critiques : Merise - Guide pratique PHPExcel PostgreSQL : Administration et exploitation d'une base de données PostgreSQL : Entraînez-vous à créer et programmer une base de données relationnelle |
|
|
00
|
|
|
#3 | ||
|
Membre du Club
![]() Inscription : mai 2010 Messages : 97 ![]() |
Si ta requete 1 ne fonctionne pas c'est etrange c'est qu'il doit y avoir un probleme dans les noms de colonnes :
essaye ca : Code :
|
||
|
|
00
|
|
|
#4 | ||
|
Membre confirmé
![]() Inscription : octobre 2007 Messages : 676 ![]() |
Voici la structure :
Code :
|
||
|
|
00
|
|
|
#5 | ||
|
Membre du Club
![]() Inscription : mai 2010 Messages : 97 ![]() |
Perso le code je l'ecrit comme ca dans la requete : Code :
|
||
|
|
00
|
|
|
#6 |
![]() ![]() Gérard ErnaelstenDBA & Dev PHP Inscription : juin 2005 Messages : 3 174 ![]() |
tu peux aussi faire un requête sur la table en vérifiant que tu n'aurais quand même pas des doublons sur Repr_id
__________________
Il faut toujours viser la lune, car même en cas d'échec on arrive dans les étoiles. O.Wilde Mes Articles/Critiques : Merise - Guide pratique PHPExcel PostgreSQL : Administration et exploitation d'une base de données PostgreSQL : Entraînez-vous à créer et programmer une base de données relationnelle |
|
|
00
|
|
|
#7 | |
|
Membre confirmé
![]() Inscription : octobre 2007 Messages : 676 ![]() |
Citation:
Les lignes étant identiques par les clés, je dois d'abord supprimer la ligne de TABLE pour ensuite insérer la copie de TABLETEMP dans TABLE et avoir ma ligne avec ses modifications. Si je ne la supprime pas, j'aurai une erreur de "duplicate key". MaitrePylos > juste pour vérifier dans ma table maintenant ou dans mon programme ? Si c'est maintenant : je n'ai aucun doublon. Si c'est dans le programme : j'en ai un, c'est pour ça que je veux le supprimer avant l'insertion ^^ |
|
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 97 ![]() |
tu as essayé un UPDATE au lieu de supprimer et re inserer apres?
|
|
|
00
|
|
|
#9 |
|
Membre confirmé
![]() Inscription : octobre 2007 Messages : 676 ![]() |
Pour faire un update il faudrait que je récupère chaque valeur de ma table TABLETEMP pour ensuite y insérer dans ma table TABLE non ?
Je pensais que la suppression + l'insertion était plus simple mais en fait peut-être pas. Je vais essayer ! |
|
|
00
|
|
|
#10 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 97 ![]() |
dit moi ce que ca donne
en gros t'aura quand meme 2 requete : 1) select... 2) update... |
|
|
00
|
|
|
#11 |
|
Membre confirmé
![]() Inscription : octobre 2007 Messages : 676 ![]() |
Bon ça ne fonctionne toujours pas, même avec un UPDATE. Je vais essayer de changer ma logique voir si ça fonctionne mieux ...
|
|
|
00
|
|
|
#12 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 97 ![]() |
alors là a part un detail d'apostrophe, de virgule ou une galere de ce genre je vois pas si les variables contiennent les bonnes valeur etc...
encadre tes noms de tables et de champs etc... par des ` (altGr+ 7^^) genre DELETE FROM `TABLE`.`TABLE` ... EDIT : tu modifie bien le bon fichiers ? ca m'arrive souvent de modifier le fichier sur ma clé usb et de me rendre compte apres 30min de galere que j'oublie de remplacer le fichier php dans wamp par le nouveau ^^ |
|
|
00
|
|
|
#13 | |
|
Membre confirmé
![]() Inscription : octobre 2007 Messages : 676 ![]() |
Citation:
ça devient chiant là x)
|
|
|
|
00
|
|
|
#14 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 97 ![]() |
sinon execute dans phpmyadmin copie et colle les requetes, tu test comme ca et apres tu modifie pour remplacer les champs voulu par les variables que tu as.
si ca marche pas quand tu remplace, c'est tes variable, sinon bha... formate ton pc ca pourrais marcher ^^ |
|
|
00
|
|
|
#15 |
|
Membre confirmé
![]() Inscription : octobre 2007 Messages : 676 ![]() |
J'ai exécuté dans phpmyadmin puisque les deux requêtes fonctionnent.
J'ai copié collé dans mon code avec des valeurs en dur (celles fonctionnant dans phpmyadmin). Et ça ne fonctionne pas. u_u je sèche là ! |
|
|
00
|
|
|
#16 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
au lieu de faire DELETE / INSERT est_ce qu'un INSERT... ON DUPLICATE UPDATE... ne serait pas mieux indiqué?
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
|
|
00
|
|
|
#17 |
|
Membre du Club
![]() Inscription : mai 2010 Messages : 97 ![]() |
|
|
|
00
|
|
|
#18 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
utilise le general query log.
http://techchorus.net/enable-mysql-g...slow-query-log http://dev.mysql.com/doc/refman/5.0/en/query-log.html
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
|
|
00
|
|
|
#19 |
|
Membre confirmé
![]() Inscription : octobre 2007 Messages : 676 ![]() |
Je pense savoir d'où vient le problème : une requête qui s'exécute avant celles ci dessus et qui du coup fait foirer mes valeurs. J'essaie de modifier ça pour voir si ça vient de là !
EDIT : problème résolu !! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com