Solved

Oracle Character set

Posted on 2002-06-24
13
3,024 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
  • 6
  • 6
13 Comments
 

Author Comment

by:hak_shaolin
Comment Utility
please help me
0
 
LVL 3

Expert Comment

by:mnicoras
Comment Utility
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
Comment Utility
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
 

Author Comment

by:hak_shaolin
Comment Utility
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
Comment Utility
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
Comment Utility
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
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 3

Expert Comment

by:p_yaroslav
Comment Utility
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
Comment Utility
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
Comment Utility
You doesn't write you database charset.
select value from v$nls_parameters
where parameter='NLS_CHARACTERSET'

Yaroslav.
0
 

Author Comment

by:hak_shaolin
Comment Utility
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
Comment Utility
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
Comment Utility
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 35 total points
Comment Utility
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

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Why doesn't the Oracle optimizer use my index? Querying too much data Most Oracle developers know that an index is useful when you can use it to restrict your result set to a small number of the total rows in a table. So, the obvious side…
Have you ever had to make fundamental changes to a table in Oracle, but haven't been able to get any downtime?  I'm talking things like: * Dropping columns * Shrinking allocated space * Removing chained blocks and restoring the PCTFREE * Re-or…
This video explains at a high level with the mandatory Oracle Memory processes are as well as touching on some of the more common optional ones.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…

763 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

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now