Forum Programmation.perl données provenant d'une mdb access

Posté par  .
Étiquettes :
0
24
août
2005
Bonjour à tous,

j'ai besoin de récupérer des données d'une base de donnée Access pour les transformer et les injecter dans une db mysql.
J'arrive à connecter les db sans problèmes mais les données récupérées sont dans un format posant des problèmes sous ubuntu (les accents ressemblent à des losanges).

Je précise que tous mes softs et mon bash utilise les caractères accentués sans problèmes.
Ma locale est en UTF-8.
J'ai essayé de changer la locale (en iso8859 pour le test) mais je n'y arrive pas: mon appel à setlocale ne modifie rien (retourne undef), pourtant je l'ai bien dans la liste quand je fais un appel à locale en bash pour avoir la liste..

Y'a-t-il une autre solution que de changer ma locale temporairement?
Sinon quelle locale utiliser ?
Et pourquoi ça ne fonctionne pas ?


Merci d'avance.
Stéphane
  • # Changer sa variable LANG sous Fedora...

    Posté par  . Évalué à 1.

    Salut,
    Je ne sais pas si ça va vraiment t'aider, mais je sais comment changer la variable LANG d'un linux. Je travaille sur Fedora, donc il peux il y avoir qq différences selon ta version, mais le principe devrais reste identique. Pour changer temporairement la variable LANG, tu fais appel à la commande "export" qui te précisera notamment la LANG que tu utilise (par défaut, c'est UTF-8). Donc, en faisant "declare -x LANG="ISO-8859-1", tu changes la variable durant la session.
    Mais si comme moi, tu souhaites le faire une bonne fois pour toute, il faut aller regarder dans le fichier /etc/sysconfig/i18n, et changer la ligne UTF8 en ISO-8859-1. Si tu ne trouves pas ce fichier (ton OS est différent), on peux retrouver ou cette variable est située en regardant dans le fichier /etc/bashrc qui précise à son tour le répertoire des profiles (/etc/profile.d) dans lequel tu devrais trouver 2 fichiers (lang.sh et lang.csh). C'est dans un de ces 2 fichiers que la variable LANG est appelée par le biais du fichier i18n dans ma distrib.

    @+
    • [^] # Re: Changer sa variable LANG sous Fedora...

      Posté par  . Évalué à 1.

      Pour finir j'y suis arrivé, j'ai reconfiguré les langues et ....

      j'ai toujours le même problème avec les accents ;(

      Je prends le nom des tables et pour chaque qd j'essaye de construire une bête query "SELECT * FROM ".$table il ya des losanges dans le nom des tables à la place des accent et ça merde.
      "ODBC erreur table pr does not exist " pour table "prénom" par exemple.

      Par contre les tables sans accents passent et les valeurs sont correctement accentuées dans les tables d'arrivée correspondantes.

      Il me semble qu'il y a interprétation de la string dans le cas de la reconstruction mais où? :(

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.