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 :

Base en Unicode et un champ référence d'un DBGrid


Sujet :

Bases de données Delphi

  1. #1
    Membre du Club Avatar de Doudy
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 104
    Points : 53
    Points
    53
    Par défaut Base en Unicode et un champ référence d'un DBGrid
    Bonjour,

    Alors voila, j'ai une base sous Firebird 2.1 avec charset UTF8
    Sous Delphi 2009, tous les caractères accentués et autres cédilles s'affichent parfaitement dans les DBGrid et dans les DBLookupComboBox.

    Mais lorsque dans une DBGrid, j'essaie de mettre une dbLookUpComboBox, les caractères accentués s'affichent bien dans la dbLookUpComboBox, mais pas dans la colonne rérérence de la DBGrid !

    Donc dans la grille le nom de l'activité : champs ACTIVITE de la table ACTIVITE, doit s'afficher en se basant sur le champ NOACTIVITE de la table NOM (voir définition des table + bas)

    Voir capture d'écran : ici

    Pour créer cela: à partir de la table, j'ajoute un nouveau champ, dans sa propriété je donne un nom (ACTIVITE) et le type de ton champ de référence: ici String
    Puis je clique sur radio button et choisis "référence".
    Dans "la définition de la référence", je choisis le nom du champ clé NOACTIVITE de la table NOM
    Et je choisis la "clé de référence" : NOACTIVITE de la table ACTIVITE,et le "champ résultat" : ACTIVITE de la table ACTIVITE qui s'affichera dans le dbgrid.

    Donc comme le montre la capture d'écran, la nouvelle colonne ACTIVITE ne gère plus les accents.

    Si vous avez une idée, merci d'avance.

    Didier


    Voici la définition de mes 2 tables:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    CREATE TABLE NOM (
      NONOM INTEGER NOT NULL,
      NOM VARCHAR(50) CHARACTER SET UTF8 NOT NULL COLLATE UTF8,
      NOACTIVITE INTEGER,
      ADRESSE VARCHAR(50) CHARACTER SET UTF8 COLLATE UTF8,
      CP INTEGER,
      VILLE VARCHAR(40) CHARACTER SET UTF8 COLLATE UTF8,
      TEL VARCHAR(20) CHARACTER SET UTF8 COLLATE UTF8,
      PORTABLE VARCHAR(20) CHARACTER SET UTF8 COLLATE UTF8,
      EMAIL VARCHAR(50) CHARACTER SET UTF8 COLLATE UTF8,
      CA NUMERIC(10, 2));
     
    ALTER TABLE NOM ADD CONSTRAINT PK_NOM PRIMARY KEY (NONOM);
     
    ALTER TABLE NOM ADD CONSTRAINT FK_NOM_ACTIVITE FOREIGN KEY (NOACTIVITE) REFERENCES ACTIVITE(NOACTIVITE);
     
    CREATE TABLE ACTIVITE (
      NOACTIVITE INTEGER NOT NULL,
      ACTIVITE VARCHAR(50) CHARACTER SET UTF8 NOT NULL COLLATE UTF8);
     
    ALTER TABLE ACTIVITE ADD CONSTRAINT PK_ACTIVITE PRIMARY KEY (NOACTIVITE);
    Ubuntu 13.10 + Debian server 7.2

  2. #2
    Membre du Club Avatar de Doudy
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 104
    Points : 53
    Points
    53
    Par défaut
    Bonjour,

    Sinon, peut être que le plus simple serait de forcer la colonne ACTIVITE du dbgrid en charset UTF8 ou UNICODE_FSS ?
    Mais dans l'inspecteur d'objet de ce champ je ne vois rien qui permet de modifier le charset.
    Débutant en Delphi avec beaucoup de lacunes , peut-être pourriez vous m'indiquer à quel endroit du code je devrais mettre ce forçage du charset ?

    Merci d'avance pour votre aide.

    Doudy
    Ubuntu 13.10 + Debian server 7.2

  3. #3
    Membre du Club Avatar de Doudy
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 104
    Points : 53
    Points
    53
    Par défaut
    Bon, et bien après de nombreux essais infructueux, j'ai du passé en charset ISO8859_1 et là tout marche bien ...
    c'est triste de devoir se priver de l'UNICODE

    Enfin, si vous avez une idée , je suis preneur ....
    Ubuntu 13.10 + Debian server 7.2

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    735
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 735
    Points : 807
    Points
    807
    Par défaut
    Citation Envoyé par Doudy Voir le message
    Bon, et bien après de nombreux essais infructueux, j'ai du passé en charset ISO8859_1 et là tout marche bien ...
    c'est triste de devoir se priver de l'UNICODE

    Enfin, si vous avez une idée , je suis preneur ....
    quels composants utilises tu ?

  5. #5
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 304
    Points
    2 304
    Par défaut
    Citation Envoyé par VLDG Voir le message
    quels composants utilises tu ?
    dans sont 1er post, il a dit "DBGrid" et "DBLookUpComboBox"
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 030
    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 030
    Points : 40 928
    Points
    40 928
    Billets dans le blog
    62
    Par défaut
    Citation Envoyé par Just-Soft Voir le message
    dans sont 1er post, il a dit "DBGrid" et "DBLookUpComboBox"
    oui mais quels composants de connexion a la BDD ?
    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

Discussions similaires

  1. [ODBC] Comment mettre à jour 2 bases ayant des noms de champs différents ???
    Par Alexlesilex dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 11/05/2006, 17h08
  2. Réponses: 3
    Dernier message: 02/05/2006, 21h36
  3. Réponses: 7
    Dernier message: 27/04/2006, 10h21
  4. champ de référence sur un DBGrid
    Par ithery75 dans le forum Bases de données
    Réponses: 4
    Dernier message: 19/11/2005, 10h55
  5. [ASP][BASE DE DONNEES ACCESS] pb champ numero auto
    Par lemaxou64 dans le forum ASP
    Réponses: 2
    Dernier message: 20/07/2005, 17h09

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