Grosse base de données, avec plein d'apostrophe

Eléphanteau du PHP | 12 Messages

24 janv. 2008, 10:04

Bonjour,

Je m'occupe d'un site depuis longtemps et je ne connaissais pas ce problème d'apostrophe.
Du coup, j'ai plus de 2000 champs contenant des textes, avec apostrophes.

J'ai essayé de les changer sous excel (en exportant la table) mais les textes sont trop gros pour utiliser la fonction remplacer.

Serait-il possible de faire une requète sql directement sur la base pour remplacer les ' en \' ?

Merci d'avance !

d0m
Mammouth du PHP | 1141 Messages

24 janv. 2008, 10:34

En quoi les apostrophes dans la base te pose t ils problème?
Ce sotn des apostrophes normales genre dans le mot aujourd'hui ou ce sont des apostrophes en trop qui n'auraient jamais du être là?

Eléphanteau du PHP | 12 Messages

24 janv. 2008, 10:39

Ce sont des apostrophes normales.
Aucun problème pour exporter la base mais impossible de la réintégrer ensuite.
Donc j'aimerais les supprimer.

d0m
Mammouth du PHP | 1141 Messages

24 janv. 2008, 10:47

Tu pourrais donner plus de détails, il y a peut être un autre moyen d'exporter.
Au passage c'est plutôt un problème base de données à moins que tu cherches un script PHP qui lie la base et remplace les apostrophes par des espaces blancs.

Dans ce cas il faut faire les requêtes SQL pour selectionner les champs,
traiter les chaines avec la fonction str_replace
et remplacer les champs dans la base par la nouvelle chaine

ViPHP
ViPHP | 4039 Messages

24 janv. 2008, 11:10

Si tu es en mysql, pas besoin de passer par php, mysql intègre une fonction de remplacement.
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphanteau du PHP | 12 Messages

24 janv. 2008, 11:55

Oui, je suis en mysql. Comment s'utilise cette fonction de remplacement ?

On m'a dit qu'il ne fallait pas mettre d'apostrophe dans une base de donnée. donc j'essaie rectifier mes erreurs. Comme les champs sont séparés par des apostrophes, le fait qu'il y ait des apostrophes dans les champs posent problème.

Je vais regarder cette fonction str_replace. Merci.

ViPHP
ViPHP | 4039 Messages

24 janv. 2008, 12:18

Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphanteau du PHP | 12 Messages

24 janv. 2008, 12:32

Ca fonctionne comme ça :
update textes set intro = replace(intro,"\'","\\'");
Merci !