?
Solved

Oracle Character set

Posted on 2002-06-24
13
Medium Priority
?
3,064 Views
Last Modified: 2013-12-03
I have two application.
one is HRACCESS tool by IBM,using WE8ISO859PI character Set
second is Oracle Financial Application, using AR8ISO8859P6.
I want to insert into a table(Table FIN) in FInancials Appllication which is getting the date from HR ACCESS table(TABEL HR).Both the tables contains a column which stores arabic characters.
When i insert into Table FIN from table HR ,for that particular column it shows my ??? marks...like this.I coudn' get the data for this column.
Why it's haappening?Is there any chance to clear this problem?
Please help me.

0
Comment
Question by:hak_shaolin
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 6
13 Comments
 

Author Comment

by:hak_shaolin
ID: 7104642
please help me
0
 
LVL 3

Expert Comment

by:mnicoras
ID: 7104889
Hi,

you need to migrate to first database to a new character set. steps needed to be performed are:

connect sys as sysdba;

shutdown immediate;

--make a full backup of your database, it's just a suggestion

startup open;

alter database character set 'UTF8';

alter database national character set 'UTF8';

shutdown immediate;

startup open;

now it should work. Note that you cannot rollbakc this migration of the caracter set and also it's possible to do it just to a superset.

see the link http://otn.oracle.com/docs/products/oracle9i/doc_library/901_doc/server.901/a90236/appa.htm#974236 for details of subsets and supersets


best regards,
Marius Nicoras
0
 
LVL 3

Expert Comment

by:p_yaroslav
ID: 7106867
Hi!

You need not migrate database!!!

You may use CONVERT function.

Purpose
CONVERT converts a character string from one character set to another.

The char argument is the value to be converted.

The dest_char_set argument is the name of the character set to which char is converted.

The source_char_set argument is the name of the character set in which char is stored in the database. The default value is the database character set.

Both the destination and source character set arguments can be either literals or columns containing the name of the character set.

For complete correspondence in character conversion, it is essential that the destination character set contains a representation of all the characters defined in the source character set. Where a character does not exist in the destination character set, a replacement character appears. Replacement characters can be defined as part of a character set definition.

Example
SELECT CONVERT('Groß', 'US7ASCII', 'WE8HP')
   "Conversion" FROM DUAL;

Conversion
----------
Gross



Best regards!
Yaroslav.
0
NFR key for Veeam Agent for Linux

Veeam is happy to provide a free NFR license for one year.  It allows for the non‑production use and valid for five workstations and two servers. Veeam Agent for Linux is a simple backup tool for your Linux installations, both on‑premises and in the public cloud.

 

Author Comment

by:hak_shaolin
ID: 7110050
when i give WE8ISO859PI(in Source or destination), it shows

ERROR at line 1:
ORA-01482: unsupported character set

this error.

what can i do?
0
 
LVL 3

Expert Comment

by:p_yaroslav
ID: 7110108
Hi!

Check youare write in charset. It seems you mistakenly write it.

May be - WE8ISO8859P1.

you may check valid character set by select from table v$nls_valid_values.

Hope it helps,
Yaroslav.
0
 

Author Comment

by:hak_shaolin
ID: 7110132
sorry in thetion i have typed wrong. It is WE8ISO8859P1 only..
I have tried with the correct one.Anyway it is giving me the same error.
0
 
LVL 3

Expert Comment

by:p_yaroslav
ID: 7110149
Could you post here exactly you command wich lead to error and database charset where you run it.

Yaroslav.
0
 

Author Comment

by:hak_shaolin
ID: 7110162
command 1:

SQL>  select convert('ÔÓÔÓ','WE8ISO859P1','AR8ISO8859P6') from dual;

ERROR at line 1:
ORA-01482: unsupported character set

command 2:

SQL> select convert('ÔÓÔÓ','AR8ISO8859P6','WE8ISO859P1') from dual;

ERROR at line 1:
ORA-01482: unsupported character set

The characters are "ARABIC" Characters.
0
 
LVL 3

Expert Comment

by:p_yaroslav
ID: 7110174
You doesn't write you database charset.
select value from v$nls_parameters
where parameter='NLS_CHARACTERSET'

Yaroslav.
0
 

Author Comment

by:hak_shaolin
ID: 7110210
in HRACCESS the database charset is WE8ISO8859P1.
in Oracle Applicatin the database charset is AR8ISO8859P6.

I want to insert date from HR access to Oracle Applicaton which contains the arabic data.
0
 
LVL 3

Expert Comment

by:p_yaroslav
ID: 7110235
Hi!

I test this on my server - it works fine.

In you example I see again error:
SQL>  select convert('ÔÓÔÓ','WE8ISO859P1','AR8ISO8859P6') from dual;

you missed one digit (8).

Please, carefully check your select statement.


Yaroslav.
0
 

Author Comment

by:hak_shaolin
ID: 7110275
i have checked with this query..but i get the result like this.

SQL> select convert('ÔÓÔÓÔÓ','AR8ISO8859P6','WE8ISO8859P1') from dual;

CONVER
------
??????

what can i do?

0
 
LVL 3

Accepted Solution

by:
p_yaroslav earned 140 total points
ID: 7110294
Hi!


If you rememeber...
I wrote above:
For complete correspondence in character conversion, it is essential that the destination character set contains a representation of all the characters defined in the source character set.....

for example for russian:
SQL> select convert('òåñòèê','CL8ISO8859P5','CL8MSWIN1251') from dual

I believe, you may convert without any loss of data in next charsets:
AR8ISO8859P6                                                    
AR8ASMO708PLUS                                                  
AR8EBCDICX                                                      
AR8XBASIC                                                      
AR8EBCDIC420S                                                  
AR8ASMO8X                                                      
AR8NAFITHA711T                                                  
AR8SAKHR707T                                                    
AR8MUSSAD768T                                                  
AR8ADOS710T                                                    
AR8ADOS720T                                                    
AR8APTEC715T                                                    
AR8NAFITHA721T                                                  
AR8HPARABIC8T                                                  
AR8NAFITHA711                                                  
AR8SAKHR707                                                    
AR8MUSSAD768                                                    
AR8ADOS710                                                      
AR8ADOS720                                                      
AR8APTEC715                                                    
AR8MSWIN1256                                                    
AR8MSAWIN                                                      
AR8NAFITHA721                                                  
AR8SAKHR706                                                    
AR8ARABICMAC                                                    
AR8ARABICMACS                                                  
AR8ARABICMACT                                                  


Best regards,
Yaroslav.
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Working with Network Access Control Lists in Oracle 11g (part 1) Part 2: http://www.e-e.com/A_9074.html So, you upgraded to a shiny new 11g database and all of a sudden every program that used UTL_MAIL, UTL_SMTP, UTL_TCP, UTL_HTTP or any oth…
Background In several of the companies I have worked for, I noticed that corporate reporting is off loaded from the production database and done mainly on a clone database which needs to be kept up to date daily by various means, be it a logical…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
This video shows how to Export data from an Oracle database using the Original Export Utility.  The corresponding Import utility, which works the same way is referenced, but not demonstrated.
Suggested Courses

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question