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

Décisions SGBD Discussion :

BD multi langage


Sujet :

Décisions SGBD

  1. #1
    Membre habitué
    Développeur .NET
    Inscrit en
    Juin 2002
    Messages
    274
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2002
    Messages : 274
    Points : 174
    Points
    174
    Par défaut BD multi langage
    Bonjour,
    Je voudrais traduire ma BD firebird en anglais, et je me demande comment procéder. J'hésite entre ces 2 solutions :

    > créer une seconde BD, et selon le langage défini par l'utilisateur dans le GUI l'une ou l'autre est utilisée (inconvénient : la MAJ de la base où toute opération serait à effectuer en double)
    > ajouter dans les tables concernées un champ "langage" puis dupliquer les données et les traduire (inconvénient : mes tables seront 2x plus lourdes)

    ...mais peut être y a t-il un autre moyen auquel je n'aurais pas pensé ? (je n'ai rien trouvé sur le forum)
    Merci de me faire part de vos idées,
    ++

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 414
    Points : 671
    Points
    671
    Par défaut
    Citation Envoyé par paradise Voir le message
    > créer une seconde BD, et selon le langage défini par l'utilisateur dans le GUI l'une ou l'autre est utilisée (inconvénient : la MAJ de la base où toute opération serait à effectuer en double)
    Non, c'est une très mauvaise idée...

    Citation Envoyé par paradise Voir le message
    > ajouter dans les tables concernées un champ "langage" puis dupliquer les données et les traduire (inconvénient : mes tables seront 2x plus lourdes)
    Pareil mauvaise idée car implique de faire des alter table à chaque fois qu'on ajoute une langue.

    Une bonne idée peut etre de faire ca :

    Dans ta table de traductions
    3 champs :
    code_langue, cle_libelle, traduction

    Pour un libellé "Titre" par exemple, on aura dans la table, ces lignes:
    fr_FR,'monappli.page1.titre','Titre'
    en_EN,'monappli.page1.titre','Title'
    de_DE,'monappli.page1.titre','Titel'

    Avec un index sur code_langue,cle_libelle


    et dans ton code applicatif, pour chaque libellé, tu vas chercher la valeur en base en fonction de la locale de l'utilisateur et de la clé de libellé cherchée

  3. #3
    Membre habitué
    Développeur .NET
    Inscrit en
    Juin 2002
    Messages
    274
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2002
    Messages : 274
    Points : 174
    Points
    174
    Par défaut
    Merci de ta réponse !
    Au passage ma BD n'est pas utilisée pour le GUI mais simplement pour stocker des données scientifiques, la plupart sont numériques mais il y a qques champs mémo.

    Pour la solution 1 :
    Non, c'est une très mauvaise idée...
    Pourquoi ? Ce n'est certes pas une idée fameuse ni pratique... mais à part ça ?

    Pour la solution 2 :
    Pareil mauvaise idée car implique de faire des alter table à chaque fois qu'on ajoute une langue.
    En effet, même si à priori il n'y aura rien d'autre que FR/EN ce n'est pas conceptuellement satisfaisant !
    J'abandonne.

    Je me permets de prendre un cas pratique pour bien comprendre.
    Par exemple une table ARTICLE et ses 3 champs :
    code_article, nom_article, couleur_article

    J'aurai donc la table COULEUR remplie de cette manière :
    code_couleur, code_langue, nom_couleur
    ---------------------------------------
    0, 0, vert
    0, 1, green
    0, 2, verde
    1, 0, jaune
    1, 1, yellow
    1, 2, amarillo

    Est-ce correct ?

Discussions similaires

  1. [doxygen] projet multi-langages
    Par JMLLB dans le forum Outils
    Réponses: 1
    Dernier message: 09/04/2008, 14h54
  2. Site multi langage
    Par benbax dans le forum Langage
    Réponses: 3
    Dernier message: 02/01/2008, 14h17
  3. Application multi langage
    Par kidpaddle2 dans le forum Windows
    Réponses: 8
    Dernier message: 16/04/2007, 14h55
  4. Réponses: 3
    Dernier message: 26/03/2007, 10h11

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