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

Outils MySQL Discussion :

Problème de charset


Sujet :

Outils MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 5
    Par défaut Problème de charset
    Bonjour à tous !

    Je vous explique :

    Je suis étudiant en informatique, et lors de mon stage annuel je réalise un Intranet en utilisant PHP, MySQL et un serveur DEBIAN LENNY.

    Tout c'est jusque la plutôt bien passé ..

    Afin de migrer l'ancienne base de données vers la nouvelle j'ai utilisé des procedure stockées ( qui ne sont rien d'autres que des requete SQL executées côté serveur) , lors de la rédaction je fais des tests, déclare des variables etc ..

    Toutes marches bien sauf celles qui réalise des tests avec des chaines de caracteres accentuées comme celles ci:

    REPEAT
    FETCH cur INTO var_IdFacture,var_CAB,var_IdContrat,var_DateFacturation,var_DateDeReglement,var_Objet,var_DateDebutEcheancier,var_DateFinEcheancier,var_MontantHT,var_Observations;
    IF NOT done THEN

    -- Si objet un grenke , Locam ou générale electrique societe de fi = obejt sinon objet = objet et societe de fi = ""
    IF var_Objet = 'général electrique' THEN
    SET var_Objet = 'Grenke';
    INSERT INTO facturation (IdFacture, CAB, IdContrat, TypeFacture, DateFacturation, DateDeReglement, SocieteDeFinancement, DateEcheancePaiement, DateDebutEcheancier, DateFinEcheancier, Objet, MontantHT, Observations ) VALUES(var_IdFacture,var_CAB,var_IdContrat,'Facture diverse',var_DateFacturation,var_DateDeReglement,var_Objet,'',var_DateDebutEcheancier,var_DateFinEcheancier,'',var_MontantHT,var_Observations);
    END IF;
    END IF;
    UNTIL done END REPEAT;
    Apres avoir testé et rata testé je me suis apercu en lancant une requete en ligne de commande sous debian que ' éléctrique ' de la varible var_Objet été en fait percu comme '?l?ctrique'.

    Je me suis pas mal renseigné sur les problemes de charsets et la encore plus étonnant je suis (normalement) partout en latin1

    En effet les commandes
    SELECT @@CHARACTER_SET_CLIENT;
    SELECT @@CHARACTER_SET_CONNECTION;
    SELECT @@CHARACTER_SET_SERVER;
    SELECT @@CHARACTER_SET_DATABASE;
    SELECT @@CHARACTER_SET_RESULTS;
    Retourne toutes :

    +--------------+
    | latin1 |
    +--------------+
    Et

    SELECT @@COLLACTION_CONNECTION;
    SELECT @@COLLATION_DATABSE;
    Retourne

    +-------------------------+
    | latin1_swedish_ci |
    +-------------------------+
    Je me suis documenté ICI et ICI

    Je ne sais vraiment pas pourquoi cela ne fonctionne pas j'ai egalement

    renseigné
    DEFAUT-CHARACTER-SET= latin1
    dans le fichier de conf de mysql ( my.cnf)

  2. #2
    Membre éprouvé
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 510
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 510
    Par défaut
    Tente de faire une petit test a part pour savoir si ça vien bien de ta base de données. Je t'avouerais que pour moi aussi c'est un casse tête.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 5
    Par défaut
    Qu'entends tu part un petit test à part ? En tout cas merci de ta réponse rapide

  4. #4
    Membre chevronné Avatar de nounetmasque
    Inscrit en
    Janvier 2003
    Messages
    494
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 494
    Par défaut
    Vérifie la structure de ta table pour être certain quelle est bien en latin1 :

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 5
    Par défaut
    Euh le probleme de SHOW TABLE STATUS c'est que toute mes tables n'apparaisse pas ors que dans un SHOW TABLES elles sont toutes présentes ca c'est en ligne de commande sous debian

    Et sous PHPMYADMIN :

    racv2_facture_contrat MyISAM 10 Dynamic 8083 156 1267244 281474976710655 118784 0 8444 2007-08-29 14:18:49 2007-08-29 14:18:59 NULL latin1_swedish_ci NULL Information sur la facture du contrat

    -> peut-on juste se fier à PMA ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Sécurité] Problème - strtr + charset
    Par Vinzius dans le forum Langage
    Réponses: 14
    Dernier message: 31/07/2008, 11h49
  2. Réponses: 7
    Dernier message: 26/04/2007, 13h21
  3. Problème de Charset
    Par beloc dans le forum Administration système
    Réponses: 5
    Dernier message: 13/12/2006, 10h54
  4. [MySQL] Problème de Charset à l'extraction des données
    Par naoufal01 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 06/11/2006, 13h14
  5. Problème de charset
    Par Yodalf dans le forum Langage
    Réponses: 3
    Dernier message: 21/10/2004, 09h29

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