Greek Character Set Problem
Dear All,
We are currently working on Oracle 8i to 9i migration and unicode implementation of an application SampleDB. We encountered an issue (described below) while the data migration.
Issue:
We have a database in oracle8i with
NLS_LANGUAGE AMERICAN
NLS_CHARACTERSET WE8ISO8859P1
NLS_NCHAR_CHARACTERSET WE8ISO8859P1
The character set WE8ISO8859P1 does not support GREEK language. The user inserts/modifies records in this database from the front-end. The front end installed in the client machine has the following setting:
Control Panel->Regional settings ->Advanced ->Language for non-unicode programs = Greek
Oracle client installed in English
Greek characters have been inserted/ updated into this database and retrieved and displayed correctly by the GUI.
Note: Greek data has been inserted into WE8ISO8859P1 database which does not support Greek characters.
Hence the actual data that is stored in the database are not Greek. Only while displaying, they are getting converted into Greek characters due to the settings in the client machine.
Requirement: Migrate the database to Oracle 9i - Unicode.
While migration, we need to eliminate any data discrepancy and make sure the data in the Unicode database is in Greek.
Can any one suggest us a method to do the migration to avoid the above mentioned problem?
Further, can any one tell us a way to verify what characters get stored in the database and help us identify if they are real Greek characters
The character set WE8ISO8859P1 does not support GREEK language.If you want to support Greek characters (or 'math' symbols), look at the EL8... char sets.
Control Panel->Regional settings ->Advanced
->Language for non-unicode programs = Greek
Oracle client installed in EnglishThis is dependent on the app and Windows. What is the NLS_LANG value in this Oracle home? NLS_LANG should be adjusted to fit the application.
Note: Greek data has been inserted into WE8ISO8859P1
database which does not support Greek characters.
Hence the actual data that is stored in the database
are not Greek. Only while displaying, they are
getting converted into Greek characters due to the
settings in the client machine.Maybe character data does not get converted, but still shown as greek.
Further, can any one tell us a way to verify what
characters get stored in the database and help us
identify if they are real Greek charactersIn the case of character data, what you really store depends on the db and the character values. You can use dump or some other PL function to look at the values.
There's a Database Globalization Support Guide for 9.2 that might be useful.
Similar Messages
-
Client-side greek character set problem
hi everyone,
i am a .net developer and absolutelly new to oracle, its my first project that i have make oracle and .net co-operate and it's proving to be a nightmare!
i ll try and provide as much info as possible to you
we have a unix sap server with oracle 10.something on it (i can check exactly what version if that's of importance) and i am writting a .net app which accesses the oracle db and retrieve some data we need
the locale settings of the db are american_america.we8dec and i cannot temper with that machine, it is out of the question
i have made the connection to the db using just connection string info, not tns and stuff, and i have set my dev machine's nls_lang to we8dec everywhere i could find it with a 'find' in the registry
however my app displays the data (which is in greek) showing random symbols that obviously make to sense
furthermore when i connect to the db via sql developer or navicat i still get the same symbols
i understand it is something to do with my client system's settings but i cant work it out
i would really appreciate your help i am sorry if it is something very simple but i just cant find it
thanksuser9084006 wrote:
i am a .net developer and absolutelly new to oracle, its my first project that i have make oracle and .net co-operate and it's proving to be a nightmare!Welcome. It's a brand new universe, but if you take it step by step I'm sure you'll do fine. Get someone near with Oracle dev and dba background to guide you, so you don't get stuck or go down broken roads.
we have a unix sap server with oracle 10.something on it (i can check exactly what version if that's of importance)It is of importance most of the time. Down to at least 4 positions (for example, "10g" is just a marketing label and mostly useless in a techincal context - 10.2.0.5 is more like it).
Also mention platform (unix OS) details.
and i am writting a .net app which accesses the oracle db and retrieve some data we needHow is the to-be retrieved data loaded or entered to begin?
>
the locale settings of the db are american_america.we8dec and i cannot temper with that machine, it is out of the question Please post output from:
SQL> select * from nls_database_parameters where parameter like '%CHARACTERSET';
and i have set my dev machine's nls_lang to we8dec everywhere i could find it with a 'find' in the registryDoes your dev (client) machine use a "we8dec" character set? Likely, as you seem to be on Windows, you should have set nls_lang client char set part to match win-1252 or whatever client char set (code page) is in use.
however my app displays the data (which is in greek) showing random symbols that obviously make to senseNo surprise since DEC character set does not have a greek character in its repertoire. If I'm not all mistaken DEC MCS (or similar) is the charcter set to which WE8DEC corresponds. You could check against mapping table in Locale builder, but available characters should be per following link or close enough.
http://czyborra.com/charsets/iso8859.html#ISO-8859-1 (second chart is DEC-MCS)
Please provide a sample of those "random symbols".
furthermore when i connect to the db via sql developer or navicat i still get the same symbolsIf that's Oracle SQL Developer it should give a true picture of what's actually stored - which, unfortuantely, seem to be invalid character data.
i understand it is something to do with my client system's settings but i cant work it out See above. But even if you correctly setup client environment, the db won't be able to store the data if databas character set is in fact WE8DEC.
>
i would really appreciate your help i am sorry if it is something very simple but i just cant find it I'm not sure, but it would seem as you have been given unfeasible conditions to work from. So maybe it's not up to you, until a character set migration has been taken place.
In general, the Database character set should be a suitable superset (repertoire) that covers all current (and hopefully future) language alphabets requirements.
You might want to search forum for 'we8dec' to find previous related discussions.
Edit:
- Added url with DEC MCS.
- platform info
Edited by: orafad on Jan 26, 2012 12:28 PM
Edited by: orafad on Jan 26, 2012 12:43 PM -
Backup failure due to Character set problem
Hi,
I am manually running a COLD backup script in Windows NT environment and all the logs has been captured below:
Recovery Manager: Release 8.1.6.0.0 - Production
RMAN-06005: connected to target database: db1 (DBID=754030292)
RMAN-06009: using target database controlfile instead of recovery catalog
RMAN> shutdown immediate;
2> startup mount;
3> RUN {
4> ALLOCATE CHANNEL disk1 TYPE disk;
5> BACKUP DATABASE TAG 'db1_db_full' FORMAT 'e:\backup\db1\db1_backup';
6> copy current controlfile to 'e:\backup\db1\Control_db1.ctl';
7> }
8>
RMAN-06405: database closed
RMAN-06404: database dismounted
RMAN-06402: Oracle instance shut down
RMAN-06193: connected to target database (not started)
RMAN-06196: Oracle instance started
RMAN-06199: database mounted
Total System Global Area 934143244 bytes
Fixed Size 70924 bytes
Variable Size 260554752 bytes
Database Buffers 673439744 bytes
Redo Buffers 77824 bytes
RMAN-03022: compiling command: allocate
RMAN-03023: executing command: allocate
RMAN-08030: allocated channel: disk1
RMAN-08500: channel disk1: sid=13 devtype=DISK
RMAN-03022: compiling command: backup
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure during compilation of command
RMAN-03013: command type: backup
RMAN-06003: ORACLE error from target database: ORA-06550: line 1, column 166:
PLS-00553: character set name is not recognized
ORA-06550: line 0, column 0:
PL/SQL: Compilation unit analysis terminated
RMAN-06031: could not translate database keyword
Recovery Manager complete.
As the above log shown, I cannot do any backup command in the RUN bracket and it complains that the character set is not recognized.
This set of error happens when I have create six other Oracle databases in my NT box. Before that, I can manually run the backup with no problem and a backupset has been generated.
If you have come across this problem and have solutions of it. That will be great.
Thanks !!
nullkk001 wrote:
Hi ,
The export Backup failing due to character set problem
. . exporting table ravidlx
EXP-00008: ORACLE error 6552 encountered
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-553: character set name is not recognized
P
Please suggest how to set character set
I don't know what you have.
I don't know what you do.
I don't know what you see.
It is really, Really, REALLY difficult to fix a problem that can not be seen.
use COPY & PASTE so we can see what you do & how Oracle responds.
do as below so we can know complete Oracle version & OS name.
Post via COPY & PASTE complete results of
SELECT * from v$version; -
Using translate function to correct character set problem....
I have a table(TBL_STOCK) on Oracle XE.
Rows come from sql server 2005 with a trigger on sql server table via the linked server.
But there is a character set problem with some character like İ,Ş,Ğ.
They change to Ý,Þ,Ð. in Oracle.
How can i correct these ? Do you suggest the TRANSLATE function ?
What do u think, if i create an After Insert trigger on Oracle table(TBL_STOCK) and convert these character using the Translate function when they inserted from sql server.
Anyone have any other ideas that can be more efficient. Any thoughts appreciated.
Thanks in advance.
Adam
PS:The NLS_CHARACTERSET of Oracle is AL32UTF8.It is sql server 2005 and Collation is SQL_Latin1_General_CP1_CI_AS
-
Oracle 8i us7ascii character set problem - help required urgent.
Hi frnds,
I have a oracle 8i database server installed on sun solaris os. The database character set is us7ascii. In one of the tables TIFF images are stored in a long column. I m trying to fetch these images using oracle 9i client and visual basic(oracle ODBC drivers). But i m unable to do so. I can not fetch special characters.
Is it because of the character set problem? but when i run my code on the server itself, i m able to fetch the images. I tried to fetch the images using oracle 8 i client on windows XP machine but could not do so. Are there any special settings that i have to do on the client side?Indeed, it's an ODBC issue. Read this statement from Oracle:
From ODBC 8.1.7.2.0 drivers onwards it's NOT possible any more to
"disable" Characterset conversion by specifying for the NLS_LANG
the same characterset as the database characterset. There is now
ALWAYS a check to see if a codepoint is valid for that characterset.
Typically you will encounter problems if you upgrade an environment
that has NO NLS_LANG set on the client (or US7ASCII) and the database
was also US7ASCII. This incorrect setup allowed you to store characters
like èçàé in an US7ASCII database, with the new 8i drivers this is not possible
any more.
Basic problem is the 'wrong' characterset US7ASCII in the database. As long as no characterset conversion happens (that's the case on the unix server), special characters are no problem.
Werner -
Oracle character set problem - help reqed urgent !!
Hello frnds,
I have a oracle 8i database server installed on sun solaris os. The database character set is us7ascii. In one of the tables TIFF images are stored in a long column. I m trying to fetch these images using oracle 9i client and visual basic(oracle ODBC drivers). But i m unable to do so. I can not fetch special characters.
Is it because of the character set problem? but when i run my code on the server itself, i m able to fetch the images. I tried to fetch the images using oracle 8 i client on windows XP machine but could not do so. Are there any special settings that i have to do on the client side?i run my code on the server itself, i m able to fetch
the images. I tried to fetch the images using oracle
8 i client on windows XP machine but could not do so.You able to fetch the image , So it is not because of the character set.
First thing you need to consider is that use certified combination of OS , client and database server only. Check Certify - Oracle's Certification Matrices
Virag -
Agent control character set problem
Hi,
here's my problem :
i've got the grid that's running on a RHES4 with an agent. On another RHES4, i've got 10g databases that run and another agent.
The repository database is configured like this :
nsl_language = AMERICAN
nls_territory = AMERICA
character set = AL32UTF8
all the uploads from the agent on the RHES4 where the grid is installed are ok.
On the other server, as soon as there's an UTF8 character in a xml file (like " é " ou " ' "), the upload fails and the agent stops.
in the logs, it s clear it comes from this. I've deleted all the occurences of UTF8 characters in the xml file and restarted the upload and it's ok...
I've tested different configurations but without success.
Any clue ?
AlivetuThanks for the reply,
NLS LANG is set on the 2 machines with FRENCHFRANCE.WE8ISO8859P15
I've added the line '<?xml version="1.0" encoding="ISO-8859-1"?>' at the beginning of the xml file that doesn't work and made a 'emctl upload'....it has passed and the agent has stopped arrived to another UTF8 xml file...
So, it really is a character set problem but where to set it ???
Alivetu -
EXPORT Backup failing due to character set problem
Hi ,
The export Backup failing due to character set problem
. . exporting table ravidlx
EXP-00008: ORACLE error 6552 encountered
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-553: character set name is not recognized
P
Please suggest how to set character set
Regards,
kk
Edited by: kk001 on Aug 29, 2011 7:22 PMkk001 wrote:
Hi ,
The export Backup failing due to character set problem
. . exporting table ravidlx
EXP-00008: ORACLE error 6552 encountered
ORA-06552: PL/SQL: Compilation unit analysis terminated
ORA-06553: PLS-553: character set name is not recognized
P
Please suggest how to set character set
I don't know what you have.
I don't know what you do.
I don't know what you see.
It is really, Really, REALLY difficult to fix a problem that can not be seen.
use COPY & PASTE so we can see what you do & how Oracle responds.
do as below so we can know complete Oracle version & OS name.
Post via COPY & PASTE complete results of
SELECT * from v$version; -
DIR7 Character Set Problem / Foreign Language
Hi there,
I am working on an app built using Director 7 that until now
has used the standard English (latin-1) character set.
However, I am required to deliver a new version including
some elements displayed in a second language, in this case Welsh,
which uses characters outside of the normal set. I believe those
required are included in Latin-1 Extended, otherwise in Unicode as
a whole, obviously.
I am having specific problems with two characters that appear
to be missing from Latin-1, which are: ŵ and ŷ
(w-circumflex, and y-circumflex [i think!]).
In a standard text box I create using Director, I am unable
either to paste either character in, or enter it using its
ALT+combination, let alone save to the associated database.
I have read that Dir 11 is the first version with full
Unicode support - which surprises me - however I would assume that
someone would likely have hit this, or a similar issue before the
release of this version and was wondering if there is a possible
solution without upgrade.
My possible thinking is either a declaration that allows
change of a Charset, as I might do in XHTML for example, or
deployment of an Xtra that allows me to use a different character
set.
If anyone could shed some light on the matter, it would be
very helpful! Thanks in advance!
Rich.Yes, this was always a problem for years. Back when I was
**** this, we had
some projects that needed text displayed in various
languages. Each
language presented its own challenges. Things like Greek
weren't too bad,
because the Symbol font works for most Greek text. (Only
problem was the
's' version of Sigma, which had to switch back to Times New
Roman.) Various
eastern European languages (Polish, Czech, Hungarian, etc.)
posed a problem
with some of the accents that were not available in standard
font sets. We
were forced to live without some of the more exotic accents,
but were told
that it would still be readable without them, if not exactly
correct. This
would probably be the closest to your situation, from what
little I know
about Welsh. It could be worse, though. Hebrew and Arabic
were challenging
as they are written right-to-left, and thus had to have code
written to
input them backwards. Russian was also tough, as the Cyrillic
alphabet has
more characters than the others, but I was able to find a
font to fake it.
(It replaced some of the lesser-used standard characters in
order to fill in
all the letters, which unfortunately meant that in the rare
cases where
those characters *were* needed, we had to improvise.) The
hardest by far
were any east Asian languages. In that case, I gave up on
trying to display
any of the text in text form, and just converted it all to
bitmaps. Without
Unicode, trying to display Mandarin or Japanese or Korean
correctly as text
is pretty much impossible. -
Character set Problem (From WE8ISO8859P1 to EL8MSWIN1253)
Hi there,
I would like to describe a problem that I face with import, export and Greek characters.
I have two databases with the following characteristics
Source database:
O/S version Windows
Database version à 10GR2
NLS_CHARACTERSET à WE8ISO8859P1
NLS_NCHAR_CJARACTERSET à AL16UTF16
NLS_LANGUAGE à GREEK
NLS_TERRITORY à GREECE
Target database:
O/S version Windows
Database version à 10GR2
NLS_CHARACTERSET à EL8MSWIN1253
NLS_NCHAR_CJARACTERSET à AL16UTF16
NLS_LANGUAGE à GREEK
NLS_TERRITORY à GREECE
From the source database, using the export tool I am exporting a table (TABLE_A) which contains Greek records. At this point I want to mention that the from the source database I am able to read the Greek characters from TABLE_A by using sqlplus i.e (select * from table_a;)
On the target database by using import I load the table TABLE_A into the database.
When I select the newly imported TABLE_A on the target database I am not able to read the Greek characters.
I have tested various scenarios by using different values for the NLS_LANG variable regarding export and import clients but I did not manage to read the Greek characters on the target database.
If anyone faced the same or a similar problem please I am asking for assistance.
Thank you in advancePlease, review this thread:
Re: Arabic Character set conversion-help needed
The thread describes a similar issue for Arabic data. Therefore, when reading the thread, substitute 'WE8ISO8859P1' for 'AR8ISO8859P6', 'EL8MSWIN1253' for 'AR8MSWIN1256', and 'Greek' for 'Arabic'.
-- Sergiusz -
Greek Character Display Problem
Hi
Server Side : We are using Oracle 8i . Database Character Set = UTF8.
Client Side: Windows XP. Modified Control Panel->Regional Settings -> Advanced->Language for non-unicode program = Greek.
Changed Alter session set NLS_Language = GREEK
When we opened the oracle connection in our VB application.
From our Visual Basic application
Now I am able to input greek chars, Retrieve it back and displayed correctly.
But When we copy a particular string and paste it in a field, one particular
character is always showing as ?. As we don't have a greek keyboard, I don't
know what combination of keys to press to key-in that particular character.
This is the Word I have copied from Editor and pasted it in the VB field.
Ονοµα επιßάτη .
Except the Character which looks like B, all other greek characters are getting displayed properly and inserted correctly in the database. Only that particular letter is displayed as ? (question mark)
Any idea what is wrong !!.
Thanks in advance.
Regards
MuraliCheck this out.
http://www.oracle.com/technology/tech/globalization/htdocs/nls_lang%20faq.htm -
Character Setting Problem ( mysql + tomcat )
Hi all;
I am using mysql dbms and tomcat web server(servlet). But in my web page, the characters are shown broken. I set the character set of the mysql database. They are shown well in the dbms console. And also I set the html code with appropriate character set in the meta tags. Do I need to make any extra setting? Perhaps in the tomcat or anywhere else? What is the problem here?assumes:
1. using jsp to display the db data
2. db encoding is ISO-8859-1
3. jsp encoding is utf-8
for the very first line of the jsp file:
<%@ page pageEncoding="utf-8" %>before displaying the data:
String str = <data from db>
str = new String(str.getBytes("ISO-8859-1"), "UTF-8"); -
Greek character rendering problem in InDesign CS2
Hi Experts,
I'm using InDesign CS2 for journal publication.
I have experienced a strange problem in Greek character rendering. We have used "Math_PI" font for greek characters and it display correctly in the story mode and not in the page mode in some places (in page mode it shows alphabet character instead of Greek). This problem identified in the particular place and not for entire article.
Please find the below screen shot for your quick reference. The highlighted character "f" should be greek "gamma" which rendered correctly in story mode but not in page view.Are you sure the Character panel isn't hidden behind another panel (Window>Type&Tables>Character)? When you choose Type>Size>Other a dialog doesn't open, the size field in the Character panel gets selected:
-
Hi Sergiusz, it looks like you are a character set guru. Maybe you would know how to solve my problem? I've got a working application under oracle xe, apache and embedded listener. I would like to switch to a new APEX listener with tomcat but there is a problem with a foreign character set. Existing pages with such characters are displayed correctly but if I type them in into an input filed they are not showing up correctly on the next page. This is done without even saving information in a database. I type in text in one field which is a source of an item on another page. These are character settings in my database.
SQL> select value from nls_database_parameters where parameter = 'NLS_CHARACTERSET';
VALUE
AL32UTF8
SQL> select value from nls_database_parameters where parameter = 'NLS_NCHAR_CHARACTERSET';
VALUE
AL16UTF16
Thanks,
ArtHi Sergiusz, thank you for your help. After setting a URIEncoding to UTF-8 and some further research I was able to fix my problem. Here is the entire solution in case someone else needs it.
1.) Change $CATALINA_HOME/conf/server.xml and add
URIEncoding=UTF-8
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
2.) Copy $CATALINA_HOME/webapps/examples/WEB-INF/classes/filters/SetCharacterEncoding.class => $CATALINA_HOME/webapps/apex/WEB-INF/classes/filters
3.) Add the following into $CATALINA_HOME/webapps/apex/WEB-INF/web.xml file after the last </servlet-mapping> tag.
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Thanks,
Art -
Character Set Problem with XSQL
Hi!
I am using xsql:insert-request of the xsql-servlet. On NT everything works fine.But on Solaris I get with the same configuration (Oracle 8.1.7 XSQL-Servlet 1.0.4.0) and the same xsl and xsql Files I get the following Error:
Exception 'java.sql.SQLException:Non supported character set: oracle-character-set-46' encountered during processing ROW element 0All prior XML row changes were rolled back. in the XML document.
I want to load Data into an object-relational Table.
Has anyone of you had the same Problem? Has anybody a solution for this Problem. Today I tried different things wihtout any success.
Thanks a lot,
Haraldhi manidhar,
I am also facing the same problem.In my case the characters are getting garbled when it is passed to a javaScript function.
Did u find a solution.
If yes please post it.
thanks in advance
Maybe you are looking for
-
Windows NT does not boot after installing NI-CAN 1.6.0 or security update
We are running Windows NT 4.0 SP 6 english with MS IE 5.5. On one machine we had NI-CAN 1.6.0 installed. After installing the security update from Microsoft over the web the machine did not boot. On another machine the security update was installed.
-
Adding button to a custom table cell (and handling them)
Hi I'm wondering if it's possible to add a button on each row of a table view using a custom table cell view. If it's possible, I'm really wondering how I can handle the click events on these buttons. Thanks
-
Hi, I would like to know if there is a SAP cockpit transaction to display grafically the handling units consuption and those production for order production. Thanks for your help.
-
Can anyone provide insight into how to size a proxy server? We would be using SUN hardware... Most importantly, type of server to buy, memory, number and configuration of cache disks. For specifics.... we would have about 4000 users, and would spread
-
How to identify OSB or OSB Express i am currently running ?
I noticed both of them are installed by the same media (i am talking about v10.3.0.3.0 , at least in the same size) . Actually i want to use Express version because it is free for one server attached with one tape drive , but after installation , the