|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : décembre 2009 Messages : 53 ![]() |
Bonjour.
Voila, j'ai un script chargé de remplir ma base de donnée. Cependant, les données de ce script sont susceptibles de changés au cours du temps. Aussi voudrai je que ce script gère l'update si il a déja été exécuté. Voila ce que j'ai pensé faire: Code :
Merci d'avance! |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Sébastien AlfaiateDéveloppeur Web Inscription : janvier 2007 Messages : 1 330 ![]() |
Le ON DUPLICATE KEY UPDATE fonctionne comme un UPDATE.
Si tu veux mettre à jour plusieurs colonne, alors, il faut il faut mettre les colonnes à mettre à jour
__________________
Zend Certified Engineer PHP 5.3 « Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana |
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : décembre 2009 Messages : 53 ![]() |
Le truc si j'utilise "column1=value, column2=value2", c'est que ça me complique le boulot.
J'ai plusieurs fichiers à reprendre pour ajouter la prise en compte de la modification et donc, mon copier collé aurait été grandement simplifié avec (10, 'aaaaa', 'bbbbb', 'ccccc'), si j'ajoute les colonnes à chaque fois ça va me prendre un temps considérable... EDIT: Problème résolu en remplaçant le INSERT par un REPLACE: INSERT INTO `portal` VALUES (10, 'aaaaa', 'bbbbb', 'ccccc') devient REPLACE INTO `portal` VALUES (10, 'aaaaa', 'bbbbb', 'ccccc'). L'enrigistrement est créé si il existe, mis a jour sinon. |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Sébastien AlfaiateDéveloppeur Web Inscription : janvier 2007 Messages : 1 330 ![]() |
Non, c'est INSERT INTO ... ON DUPLICATE KEY UPDATE ... qui va tenter de créer un enregistrement et le mettre à jour si il existe déjà.
REPLACE INTO ... lui va supprimer la ligne si elle existe déjà pour la recréer juste après. ce qui peut causer des problème avec les champs en auto increment
__________________
Zend Certified Engineer PHP 5.3 « Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana |
|
00
|
Copyright © 2000-2012 - www.developpez.com