When Oracle SQL*Plus inserts text into tables, it does not simply insert it
as it is. It compares 2 parameters: the server side NLS_CHARACTERSET and
the client side NLS_LANG, if they don't match, Oracle tries to translate it
before insertion (or retrieval). The server side NLS_CHARACTERSET has to be
a superset of the client side NLS_LANG or the translation will fail.

The server side NLS_CHARACTERSET is in table NLS_DATABASE_PARAMETERS, which
is created during database creation. The client side NLS_LANG parameter
(either as environmental variable in unix, or in registry for Windows) can
be set at session level. For example, our database is UTF-8 and our clients
can have NLS_LANG set as JA16EUC, JA16SJIS or WE8ISO8859P1. SQL*Plus
properly translates between JA16EUC/JA16SJIS/WE8ISO8859P1  and UTF8.

So please make sure that
1. Your database is UTF-8. (select value from nls_database_parameters where
parameter = 'NLS_CHARACTERSET';) If not, you can not insert unicode into
the database.
2. Set your client NLS_LANG to match the text that you want to insert.
Note: It does not have to be UTF-8, SQL*Plus will translate it for you.

Hope this helps.

Foster


                                                                                       
                                       
                      "Sreedhar.M"                                                     
                                       
                      <sreedhar@cmcltd         To:      <[EMAIL PROTECTED]>          
                                       
                      .com>                    cc:      
<[EMAIL PROTECTED]>                              
                      Sent by:                 Subject: How Can I insert Unicode 
Characters thru SQL*Plus                     
                      unicode-bounce@u                                                 
                                       
                      nicode.org                                                       
                                       
                                                                                       
                                       
                                                                                       
                                       
                      06/07/2002 09:19                                                 
                                       
                      AM                                                               
                                       
                                                                                       
                                       
                                                                                       
                                       





Hi,
I'm working on Internationalization.
My System Configuration:

Operating System : Windows2000  Professional
Database:��� Oracle 9i
Font : Arial Unicode MS ( suitable font for my  language for display)

I tried so much to directly insert Unicode  Characters(Telugu [INDIA]
Language Characters copied from UNIEDIT Software to  the SQL* Plus editor)
into Oracle 9i database through SQL*Plus editor. But all  the time I was
not succeeded.Please tell me what is the process� to insert  directly these
Unicode characters(Additional Configuraions to  do?????)
I just created a tablespace with the following  commands through my
SQL*Plus.


1.create tablespace MyTablespace datafile  'e:\Datafiles\MyDatafile.dbf'
size 10m autoextend on maxsize  unlimited;

2.create user foo identified by foo default tablespace  MyTablespace;

3.grant resource,connect to foo;


Then I created a table with the follwing command


1) create table MyTable(str nchar(200));
2) insert into�MyTable  values('???');������ // This is my own language
word



But the result is�� "ORA-12704: character set mismatch"


��� ��� ��� ���  ��� ��� ��� Please tell me how to  proceed for insertion
in detail.

��� ���  ��� ��� ��� ���  ������ "This is very�Urgent for my  project"

��� ���  ��� Thanks in Advance and Thanks a Lot for reading this huge mail
with so much patience.
�Rgds,
Sreedhar.M


Reply via email to