IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Remplacer un champs à partir d'une expression régulière


Sujet :

Requêtes MySQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2005
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 58
    Points : 30
    Points
    30
    Par défaut Remplacer un champs à partir d'une expression régulière
    Salut à tous les codeurs !

    J'ai un gros soucis au niveau d'une base MySQL transactionnelle qui contient énormément de données.

    Pour faire court, un passage d'une appli d'une base Oracle à une base MySQL a été opéré mais pas assez efficacement : le code des requêtes était trop près du SQL Oracle ; ce qu'il se passe aujourd'hui c'est qu'on constate que dès qu'un champs texte est ajouté en base, un doublement d'apostrophe est opéré (si je rentre l'homme, en base j'obtiens l''homme). On a donc fait les changements qui s'imposaient, seulement on a une tonne de données avec énormément d'apostrophes (car dès que les données étaient réutilisées, ça doublait et redoublait encore les apostrophes) ; je recherche donc une requête MySQL capable de faire le boulot.

    Il m'est donc impossible de savoir le nombre d'apostrophe que pourrait contenir un champs, je sais juste qu'ils se suivent forcément. J'aurais donc voulu passer par une expression régulière, mais j'ai l'impression que ce n'est pas le truc de MySQL. Bref en gros je cherche à faire un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    UPDATE table SET champs = FUNCTION(table.champs, "''", "'") WHERE champs LIKE "%''%";
    function serait un peu l'équivalent d'un "replace" récursif : toute apostrophe suivi par une autre est supprimée. Ce n'est qu'un exemple bien sûr, j'imagine que la syntaxe serait forcément différente voire impossible de cette manière !

    J'ai malheureusement pas la possibilité de le faire via un script du style en PHP (ça aurait été très simple pour le coup), à cause de problème de droits sur le serveur... Je n'ai donc qu'accès à la base MySQL via PhpMyAdmin... et j'ai pas envie de tout me taper à la main !!!

    Quelqu'un aurait une solution à me proposer ?
    Je vous remercie pour votre aide ! @ bientôt !

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 30
    Points : 22
    Points
    22
    Par défaut
    Passage en mode flemme intense =>
    fais un replace 3-4 fois de suite .

Discussions similaires

  1. Réponses: 8
    Dernier message: 11/07/2012, 15h05
  2. Réponses: 8
    Dernier message: 26/09/2011, 16h56
  3. Réponses: 13
    Dernier message: 30/06/2010, 15h23
  4. Réponses: 3
    Dernier message: 29/10/2009, 09h31
  5. Génération d'un String à partir d'une expression régulière
    Par yang dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 06/03/2007, 14h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo