CharSet => Je pète un plomb. [Oracle] - SQL/NoSQL - Programmation
Marsh Posté le 02-08-2004 à 17:19:39
En passant (vous pourrez peut-être me répondre là dessus...
Avec SQL+, on ne peux pas faire plusieurs requêtes à la suite ? Je passe par un buffer (ed), et ça plante quand je met un ;
Ca merde aussi si je met des / à la place ()
|
Marsh Posté le 02-08-2004 à 18:16:56
Bah heureusement qu'on a des experts au taff, parceque là, j'étais pas près de trouver !!!
Citation : Sylvain Devidal/Medi... hello mandar |
(Reboot)
Citation : Sylvain Devidal/Medi... thant you !!! it works !!!! |
Marsh Posté le 02-08-2004 à 16:19:29
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 ?