REPLACE virgule php/mysql

Fermé
jeff_jones - 6 avril 2009 à 14:25
 jeff_jones - 7 avril 2009 à 15:39
bonjour,

Voila je souhaite mettre à jour mes tables mysql via la commande Load DATA INFILE
Aucun soucis, sauf que ces fameux fichiers (que je ne peut en aucune façon modifier) sont dans un format spécial du style les "é" sont des virgules, les "à" sont des à etc...

Pour resoudre le problème, j'ai décidé d'utiliser une fonction replace juste apres la mise à jour sur les champs ou je souhaite un affichage correct
exemple :
UPDATE table SET champ=REPLACE(champ,'ancien','nouveau') WHERE champ LIKE '%ancien%'

ca marche dans la plupart des caractères à remplacer sauf quand je souhaite remplacer la virgule par le é. je seche, c'est surement une grosse erreur de ma part mais j'aimerais votre avis.

UPDATE table SET champ=REPLACE(champ,',','é') WHERE champ LIKE '%,%'
A voir également:

5 réponses

HostOfSeraphim Messages postés 6750 Date d'inscription jeudi 2 février 2006 Statut Contributeur Dernière intervention 31 juillet 2016 1 608
6 avril 2009 à 14:27
C'est un problème d'export du fichier. Tu ne peux pas refaire l'export dans un autre encodage ? (je dirais ISO-8859-1...)

0
Malheureusement non, ces fichiers viennent d'une vieille application et aucun moyen de choisir le format d'exports.
Par contre peut t'on choisir le format d'import dans la fonction LOAD DATA INFILE??

'fin soit, en bref je dois travailler en aval, apres ou pendant la mise à jour...
0
HostOfSeraphim Messages postés 6750 Date d'inscription jeudi 2 février 2006 Statut Contributeur Dernière intervention 31 juillet 2016 1 608
6 avril 2009 à 15:26
OK.

Est-ce que le fichier est éditable (j'entends suffisamment léger pour être ouvert) ?

Tu est sur quel OS ?

0
oui les fichier texte en question vont de quelques ko à quelques dizaine de méga, pas de quoi peter une braguette donc.

Par contre ces fichiers sont générés ponctuellement et automatiquement, donc les mauvais caractères reviendrons a chaque fois,
secondo les mise à jour par les champs type file se feront par des employés, absolument imposible de leur dire "n'oubliez pas, avant de faire la mise à jour de modifier a chaque fois dans chaque fichier txt les caractères etc ......."

c'est une vrai galère ce probleme, je devellope sous xp pour des xp....
0
HostOfSeraphim Messages postés 6750 Date d'inscription jeudi 2 février 2006 Statut Contributeur Dernière intervention 31 juillet 2016 1 608
6 avril 2009 à 15:47
OK, je comprends mieux.

Avec MySQL, en ligne de commande, ça ne me fait aucun changement... mais avec phpMyAdmin, ça marche ! Etrange, en effet...

0
mes requetes fonctionnent pour n'importe quel caractère alors pourquoi pas la virgule, est ce betement un problème de chaine de caractères?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
toujours aucune idée? je desespère, c'est deja assez penible de faire une requete par caractère mais si en plus je ne peux pas remplacer la virgule :..(
0