Alors.
Sur un serveur UNIX, on a une application qui travaille avec le charset ISO-8859-1.
Elle écrit des données dans une base de données Oracle dont le charset est US-ASCII.
Donc, quand on enregistre dans la base, on a :
"ihjnbkoqt|{yg`&@" au lieu de "éèêîâëïñôüûùçà&@"
Je vais donc cette requête (dans SQL Plus, directement en telnet sur le serveur Unix, parceque sinon ce tocard de TOAD refait une conversion) :
select convert(tradesig1, 'WE8ISO8859P1', 'WE8ISO8859P1') from prm where codsoc = 0 and
codpro = '5B00021' and codlan = 'ENG'
|
Ca marche bien.
Maintenant, j'ai un site WEB, donc la base de données est sur un autre serveur Oracle, donc la localisation est ISO-8859-1 (pour faire simple)
Lorsque j'exporte mes données d'un serveur à l'autre (directement depuis Oracle, en utilisant un DBLink) j'utilise cette requête :
insert into prm@ecomtest.world
(select 0, codpro, 'ENG', convert(tradesig1, 'WE8ISO8859P1', 'WE8ISO8859P1') from prm where codsoc = 0 and
codpro = '5B00021' and codlan = 'ENG')
|
Logique quoi...
Seulement, si je fais :
select * from prm@ecomtest.world
|
Ben ça me retourne "ihjnbkoqt|{yg`&@", alors que j'ai portant bien mis la chaîne formattée avec le bon charset
Depuis le site web, idem, j'affiche comme un con "ihjnbkoqt|{yg`&@" quelquesoient les paramètres que je puisse mettre à convert dans mon select, ou le charset spécifié au niveau HTML
Vous avez une idée ?