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

Lazarus Pascal Discussion :

Problème de MySQL en latin


Sujet :

Lazarus Pascal

  1. #1
    Membre habitué
    Inscrit en
    Mars 2002
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations forums :
    Inscription : Mars 2002
    Messages : 230
    Points : 127
    Points
    127
    Par défaut Problème de MySQL en latin
    Bonjour,

    J'ai enfin réussi á bouger mes tables de paradox en MySQL!
    Je voudrais savoir ce que je dois faire mantenant pour voir mes tables comme il faut sous Lazarus.
    J'ai des champs avec des lettres åøæ, et ca il aime pas!

    Si je me rappelle c'est parceque lazarus 9.26.2 est en UTF-8 et MySQL en latin (je crois!)

    est ce que vous pouvez me dire ce que je dois faire avec mes tables?
    Est ce que je peux les modifier?
    Est il plus simple de modifier mon application de Lazarus?

    Merci
    Jean-Christophe
    Sincérement
    Jean-Christophe

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    L'encodage de la base mySQL est indépendante de la plateforme qui fait fonctionner votre programme compilé en Lazarus. Toutes les combinaisons sont donc possibles. Avec les composants Zeos, je déclare les propriétés de ma connexion avant de l'utiliser. Par exemple, après examen d'une base composée de tables en iso-latin stockées chez un de mes hébergeurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      ZConnectBDD.Properties.Clear;
      ZConnectBDD.Properties.Add('character_set_client=utf8');
      ZConnectBDD.Properties.Add('character_set_connection=utf8');
      ZConnectBDD.Properties.Add('character_set_database=utf8');
      ZConnectBDD.Properties.Add('character_set_results=utf8');
      ZConnectBDD.Properties.Add('character_set_server=utf8');
      ZConnectBDD.Properties.Add('character_set_system=utf8');
      ZConnectBDD.Properties.Add('collation_connection=latin1_swedish_ci');
      ZConnectBDD.Properties.Add('collation_database=latin1_swedish_ci');
      ZConnectBDD.Properties.Add('collation_server=latin1_swedish_ci');
      ZConnectBDD.Properties.Add('codepage=utf8');
    Je suppose qu'il existe des propriétés semblables avec les connecteurs natifs de Lazarus. Ces tables fonctionnent alors avec le même programme compilé en Lazarus sous Debian (natif UTF8) ou Windows (natif ANSI).
    Cordialement. Gilles
    Dernière modification par M.Dlb ; 26/05/2009 à 17h16. Motif: BALISE CODE

  3. #3
    Membre habitué
    Inscrit en
    Mars 2002
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations forums :
    Inscription : Mars 2002
    Messages : 230
    Points : 127
    Points
    127
    Par défaut
    Pour mon probléme avec MySQL, j'ai trouvé ca:
    http://bugs.freepascal.org/view.php?id=13588

    Je pense que c'est la raison pour laquelle ca ne marche pas.
    Je vais essayer avec Zeo, mais je n'arrive meme pas á débugger une application sans composants pour le moment....

    a+
    Jean Christophe
    Sincérement
    Jean-Christophe

  4. #4
    Invité
    Invité(e)
    Par défaut
    Oui finalement ce n'est pas nécessairement un problème d'encodage mais éventuellement un problème de compatibilité avec la libmysql. J'utilise une 5.0.27 pour Windows et une .so.15 pour Linux. Certaines lib mySQL sont plus ou moins compatibles.
    En ce qui concerne Zeos, cela fonctionne vraiment très bien sous Windows et Linux (la 6.6.4 et la 3 aussi d'ailleurs). Sur Lazarus, elle est très facile à installer, gère de nombreuses bases... Elle est également compatible Delphi (7 et 2007 au moins pour l'avoir utilisée dans les 2 cas) mais un peu plus délicate à l'installation. Seul problème rencontré, son installation sur un "vieux MAC OS 10.4 Tiger " doté d'un PowerPC qui n'a jamais abouti.
    Cordialement. Gilles

  5. #5
    Membre habitué
    Inscrit en
    Mars 2002
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations forums :
    Inscription : Mars 2002
    Messages : 230
    Points : 127
    Points
    127
    Par défaut
    J'ai essayé avec:
    character_set_client=latin1;
    character_set_connection=latin1;
    character_set_database=latin1;
    character_set_results=latin1;
    character_set_server=latin1;
    character_set_system=latin1;
    collation_connection=latin1;
    collation_database=latin1;
    collation_server=latin1;
    codepage=latin1;
    Mai ca ne change rien.

    Je peux éditer les tables dans MySQL Administrator, il n'y a pas de problémes.
    Je peux éditer les tables dans delphi6, il n'y a pas de problémes.

    Lazarus ne veux pas!

    Une idée?
    Serveur: 5.0.81
    Client: 5.1.11

    Merci
    Jean Christophe
    Sincérement
    Jean-Christophe

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Je ne crois pas que collation_connection=latin1 soit acceptée mais plutôt qq chose du genre collation_connection=latin1_swedish_ci ou utf8_general_ci (par exemple). Le paramétrage de la connexion est assez susceptible. Une "incompréhension" ne renvoie pas d'erreur explicite... mais simplement une erreur de connexion.

    Cordialement. Gilles

  7. #7
    Membre habitué
    Inscrit en
    Mars 2002
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations forums :
    Inscription : Mars 2002
    Messages : 230
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    Oú est ce que je peux voir oú sont ces files?
    J'ai éssayé avec latin1_swedish_ci, et je me prends un message qui me dit que cette file est inconnue.

    Merci
    Sincérement
    Jean-Christophe
    Sincérement
    Jean-Christophe

  8. #8
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Il est très peu probable que votre serveur, votre base et vos tables soient toutes en "latin1".

    Par exemple, si vous utilisez EasyPhp, phpMyadmin vous indique "caractères pour MySQL: UTF-8 Unicode (utf8)"... indépendamment des bases et des tables. Votre base peut elle aussi être en utf8_general_ci par exemple et pourquoi pas vos tables en latin1_swedish_ci. Lors de la création des tables, c'est le même encodage que la base qui est proposé par défaut. Mais rien empêche, qu'une de vos bases et vos tables soient intégralement en latin1_swedish_ci. Le serveur lui ne changera pas : il est installé en UTF-8 Unicode (utf8)".

    Donc les caractéristiques que vous précisez ci-dessus me semblent très peu probables et de toute façon "syntaxiquement" incorrectes (voir réponse ci-dessus).


    Cordialement. Gilles

Discussions similaires

  1. problème avec MySql
    Par cescu dans le forum Requêtes
    Réponses: 4
    Dernier message: 20/02/2006, 12h18
  2. Problème accent mysql
    Par staive dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 01/02/2006, 19h11
  3. Problème de caractères non latin dans un formulaire
    Par Huntress dans le forum Langage
    Réponses: 3
    Dernier message: 31/01/2006, 13h34
  4. [JDBC]Problème Accent MySQL depuis DB browser dans eclipse
    Par chpruvos dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 26/08/2005, 14h14

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