Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: mod_plsql / dad / character set problem
Jeremy <jeremy0505_at_gmail.com> wrote:
>> There is no WE8ISO8859. Do you mean WE8ISO8859P1?
>>
> I do indeed - typing from memory instead of checking.
You have a problem then. You cannot store a Euro character in such a database.
You probably have a Windows client and your NLS_LANG is (incorrectly) set to TERRITORY_LANGUAGE.WE8ISO8859P1 (correct would be WE8MSWIN1252).
Since client and server character set are identical, no conversion takes place. Now Oracle does not convert the Windows character 0x80 (the Euro) and stores it unchanged in the database.
This is a bug in Oracle, because 0x80 has no meaning in WE8ISO8859P1. Basically the database allows you to store an invalid character.
This is why the Euro sign does not show up correctly. The bug manifests only when the client character set is different from the database character set.
The easiest solution would be to convert the database character set to WE8MSWIN1252 without changing the data in the database.
Read the globalization support guide, particularly http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14225/ch11charsetmig.htm#sthref1476
Yours,
Laurenz Albe
Received on Mon Jul 17 2006 - 10:05:44 CDT
![]() |
![]() |