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

Bases de données Delphi Discussion :

ZEOS+Firebird 2.1 + UTF8 D2010


Sujet :

Bases de données Delphi

  1. #1
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 038
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 038
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut ZEOS+Firebird 2.1 + UTF8 D2010
    Bonjour ,

    Jusqu'a présent je me contentais de travailler avec une base Firebird charset NONE , ce qui n'était peut être pas bien , mais cette base date de la version IB 5.0 et de mes débuts SGBDD . Ne pouvant la migrer , faute de temps elle restera ainsi .

    Maintenant je viens de créer une nouvelle base Codée UTF8

    Mais surprise
    si la ZQuery fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       UPDATE TVA SET LIBELLE='Exonéré' WHERE CODE_TVA='0'
    Exonéré devient Exonéré à l'affichage

    Pire si j'utilise un ZUpdateSQL et que je saisisse dans un TDBEdit ou une DBgrid correctement le mot , je me retrouve avec une erreur

    -
    SQL Error: Malformed string. Error Code: -104. Invalid token The SQL: UPDATE TVA SET LIBELLE_TVA = ? WHERE TVA.CODE_TVA = ?;
    je subodore que le problème se situe au niveau de la connexion mais Où ? j'ai beau avoir mis dans les propriétés

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Base.Properties.Add('Charset=UTF_8');
    Base.Properties.Add('Codepage=utf8');
    rien n'y fait . Une erreur de ma part ? sans doute ! mais cela me fait regretter le Charset NONE

    Que faut-il faire pour retrouver mes accents graves et aigües et autres ?
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  2. #2
    Membre confirmé
    Avatar de alheuredudejeuner
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2005
    Messages : 376
    Points : 632
    Points
    632
    Billets dans le blog
    4
    Par défaut en dehors de l'application
    bonjour

    Ca donne quoi dans ibexpert ou équivalent ?

    André

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 038
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 038
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    P.S. ZEOSDBO version 7.0

    tout est ok dans les GUI (ibexpert ou flamerobin)
    le plus drole c'est que je viens de faire le même essai en Lazarus et c'est nickel sans même avoir indiquer l'encodage.

    J'ai l'impression qu'une fois de plus les arcanes de l'encodage sois pour moi très trouble . J'ai besoin d'une confirmation
    UNICODE< > UTF8 ?
    DELPHI est UNICODE ou UTF8 ?

    j'y perd mon LATIN
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 71
    Points : 102
    Points
    102
    Par défaut
    Salut,
    Delphi 2010 est Unicode.
    UTF-8 est une forme de transformation universelle de l'Unicode comme UTF-16 et UTF-32
    L'avantage de l'UTF-8 est une manipulation simple de chaînes en ASCII...Je ne sais pas si je suis claire...
    Sinon je pense que ton problème se situe au niveau du charset donc regarde ici et ici
    @+

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 038
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 038
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    @nuxtay cela confirme bien ce que je pensais .

    Le plus 'drôle' c'est que cela fonctionne parfaitement sous Lazarus à croire que c'est Delphi qui pose le problème , genre une double conversion ?!

    ça me fait penser au même problème rencontré avec Rave et le Richtext irrésolu à ce jour
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  6. #6
    Membre confirmé Avatar de TryExceptEnd
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    501
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2006
    Messages : 501
    Points : 574
    Points
    574
    Par défaut
    Peut-être que le problème viendrait plutôt de ZEOS, car sur leur site web ils indiquent clairement :
    6.6.6-stable is the maintenance release for the 6.6-stable series. Upgrades should just fix some existing bugs.

    7.0.0-alpha is the first experimental release which should make zeoslib usable on Delphi 2009 and Delphi 2010
    Si vous êtes libre, choisissez le Logiciel Libre.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 71
    Points : 102
    Points
    102
    Par défaut
    Salut,
    première idée débile si tu met aucun charset dans delphi comme lazarus...ca donne quoi dans la base Firebird...
    lors de la création de la base firebird y a pas une option UTF-8 auto...
    une deuxième idée débile me traverse l'esprit fait des tests en décodent/encodent UTF-8...pour les fonctions regarde ici
    je fatigue, le cerveau répond plus...,allez...
    @+

  8. #8
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 038
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 038
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    @Try
    Zeos 6.6 n'est pas Unicode pour Delphi (s'arrête à D2007/D11)
    except
    Bonne idée toutefois , j'ai remis en cause le package source.
    j'ai du mal a re-installé Zeos (D14) suite plus tard
    end

    @nuxtay
    J'avais bien sur fait toutes ces manips avant d'appeler à l'aide
    (cerveau vieux mais pas encore malade )
    PS . Pour Firebird la base est bien UTF8 et effectivement par défaut le Charset est à NONE

    Les données sont codées correctement dans Firebird (pour preuve l'affichage via GUI ou via Lazarus) .
    L'idée de TryExceptEnd semble la bonne piste à quelques lignes près . Mon erreur est , je pense, dans les chemins de recherche de compilation de mon application , j'avais gardé ceux de D7 .
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  9. #9
    Membre éclairé

    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2010
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2010
    Messages : 297
    Points : 705
    Points
    705
    Par défaut
    J'ai déjà posté une discussion sur le problème de charset avec les composant zeos ici : http://www.developpez.net/forums/d10...p-by-order-by-
    sous-firebird-composants-zeos/
    Actuellement je commence à me familiariser avec les composants UIB, et après quelques tests avec le charset ISO8859_1 ça marche bien.

    Ce poste m'intéresse autant que vous, j'espère qu'on pourra trouver une solution sous Zeos pour ne pas avoir à remplacer tous mes composants de données.

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 71
    Points : 102
    Points
    102
    Par défaut
    Salut,
    en regardant un peu sur le cite ZEOS, le problème et bien connu,
    il y a quelques petites bidouilles/pistes dans le code source, mais pour le moment aucun correctif sur la bêta ( va falloir t'y mettre SergioMaster )
    donc en gros va falloir modifier les sources si tu veux de l'UTF-8.
    @+

  11. #11
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 038
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 038
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    Citation Envoyé par nuxtay Voir le message
    en regardant un peu sur le site ZEOS, le problème et bien connu,
    il y a quelques petites bidouilles/pistes dans le code source, mais pour le moment aucun correctif sur la bêta ( va falloir t'y mettre SergioMaster )
    donc en gros va falloir modifier les sources si tu veux de l'UTF-8.

    et je suis en train de craquer

    j'ai télécharger la dernière SVN , du coup plus de compilation D2010
    (alors que D2009 est ok) j'ai l'impression que l'équipe l'a laissé tomber !
    de plus , je me suis inscrit à leur forum , mais j'attends en vain leur confirmation ? is ZEOS dead ?


    quand a l'utf8 je cherche , je cherche ....
    étonnant ce bug , quand on sait que ca passe tout seul avec lazarus , ou avec un charset=NONE
    juste pour je vais essayer avec une base ISO

    [EDIT]
    Avec ISO8859-1 ça passe tout seul , ça m'apprendra a viser l'international je me contenterais des langues étrangères que je connais
    [/EDIT]

    Moralité :
    je regrette de n'avoir pas acheter une version entreprise de D2010 (une erreur de ma part à la commande) ou Upgrader en XE mais pour celle là j'attends toujours la version compilation LINUX
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 71
    Points : 102
    Points
    102
    Par défaut
    Non faut pas craquer
    Je suis pas sur que la version delphi y soit pour grand chose...
    mais la version de ZEOS 7 bêta unicode un peu plus,
    en passant par iso tu auras probablement moins de problèmes, mais voilà c'est de l'ISO8859-1 pas de l'international...
    Reprendre les sources des composants ZEOS pour avoir UTF-8 ?
    La solution ne sera pas simple et longue en temps probablement...
    Contacter ZEOS sur le forum pour savoir si il y aura une mise à jour, mais j'ai bien l'impression que c'est 1 pas en avant pour 2 pas en arrière...
    Ah le passage à l'unicode ne se passe si bien pour tout le monde...
    [/EDIT]c'est bien ce que je pensai ISO8859-1 passe, maintenant peut-être attendre une mise à jour, mais là c'est une autre histoire...[/EDIT]
    @+

  13. #13
    Membre éclairé

    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2010
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2010
    Messages : 297
    Points : 705
    Points
    705
    Par défaut
    Ça me surprend de lire qu'avec ISO8859_1 ça marche très bien; c'est vrai qu'au niveau de l'affichage des caractères accentués ya pas photo, mais il suffit de tester un requête "order by" ou "group by" pour obtenir obtient le message d'erreur : 'characterset ISO8859_1 is not installed'.
    Je précise que j'utilise la version 7 alpha de zeos.

  14. #14
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 038
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 038
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    @adelneo rabat-joie
    je n'ai effectivement tester que l'affichage , il va falloir que j'insére des données pour pouvoir vérifier .

    @nuxtay j'attends toujours la confirmation de mon inscription au forum Zeos

    il est vrai que ce passage à l'unicode nous fait perdre notre 'latin 9' et casse notre DOS 858

    [edit] Après un essai , rapide je l'avoue , je ne rencontre pas les erreurs citées par @adelneo .
    J'utilise la dernière version SVN de ZEOS 7.0 les composants 2009 car ceux pour D2010 ne s'installent pas ,un problème de procédure initialization non trouvée.
    D'ailleurs ce problème est étrange puisque nous avons affaire aux mêmes sources . Une particularité de D2010 et up ? possible , je crois me souvenir d'une phrase ou deux de T.Laborde à ce sujet lors du codeway tour de l'année dernière . Faudra que j'investigue encore
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  15. #15
    Membre éclairé

    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2010
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2010
    Messages : 297
    Points : 705
    Points
    705
    Par défaut
    J'ai rencontré cette erreur sous D7.
    je n'arrive pas à installer Zeos sous D2010, je vais essayer avec les composants 2009.

  16. #16
    Membre éclairé

    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2010
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2010
    Messages : 297
    Points : 705
    Points
    705
    Par défaut
    J'ai installé les composants zeos pour Delphi 2010 sur D2010, mais j'ai toujours le fameux message d'erreur en activant un Query comportant Order by.
    Je ne comprends pas pourquoi ça ne marche pas chez moi, c'est à cause de ma version de zeos peut être. Où pourrai-je télécharger la version svn (ça signifie quoi svn ?)

  17. #17
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 038
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 038
    Points : 40 943
    Points
    40 943
    Billets dans le blog
    62
    Par défaut
    SVN = Source Version Number , une des grandes nouveautés de XE est qu'un gestionnaire de sous-version y a été intégré , notons qu'il y avait un gestionnaire de sous-version ajoutable à l'IDE avant voir ici ou via la JCL .

    Il faudra également installer TortoiseSVN tortoise il y a même un pack français (je viens de le découvrir ,par exemple ici)

    Pour les dépôts , j'ai l'habitude de travailler directement avec tortoise
    1. créer un répertoire Zeos
    2. clic droit sur le répertoire
    3. créer un dépot (repository)
    4. puis importer (adresse du depot : svn://zeos.firmos.at/zeos/trunk)

    les mise à jour sont encore plus simple en 2 clics c'est fait
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  18. #18
    Membre éclairé

    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2010
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2010
    Messages : 297
    Points : 705
    Points
    705
    Par défaut
    À l'import de svn://zeos.firmos.at/zeos/trunk, je dois m'authentifier ! D’où pourrai-je ramener le password et le username ?

  19. #19
    Membre éclairé

    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2010
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2010
    Messages : 297
    Points : 705
    Points
    705
    Par défaut
    c'est Ok, il fallait utiliser svn checkout.

  20. #20
    Membre éclairé

    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2010
    Messages
    297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2010
    Messages : 297
    Points : 705
    Points
    705
    Par défaut
    j'arrive pas à installer la version svn sur D2010, j'ai essayé avec les composant 2010 et 2009 mais en vain; la compilation passe très bien mais l’installation se bloque par l'erreur zdbc140.bpl est introuvable (ou 120) pourtant le répertoire build est bien présent dans le path de delphi; je l'ai même ajouté au path de l'os mais ça n'a rien donné.
    je précise que j'arrive à installer la version alpha en ajoutant le répertoire build au path de l'os.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Recuprer ID generer ZEOS+FIREBIRD
    Par fthdz dans le forum Bases de données
    Réponses: 6
    Dernier message: 01/12/2013, 13h38
  2. [Lazarus] Zeos + Firebird + TDBGrid et caractères étendus
    Par ddaime dans le forum Lazarus
    Réponses: 3
    Dernier message: 26/04/2011, 18h45
  3. EMBEDDED Firebird Server and UTF8
    Par salem_b_a dans le forum Firebird
    Réponses: 3
    Dernier message: 14/01/2010, 08h55
  4. Firebird et Zeos
    Par akli_agha dans le forum Connexion aux bases de données
    Réponses: 2
    Dernier message: 12/10/2007, 10h16
  5. Tutoriel Firebird - Zeos
    Par Raylemon dans le forum Bases de données
    Réponses: 9
    Dernier message: 22/12/2006, 08h51

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