演示字符集不同導致插入,查詢產生亂碼的過程

還不算暈發表於2013-10-10
進行查詢:
會話1:使用ZHS16GBK字符集,可以正常顯示插入的漢字。
[oracle@bys001 ~]$ export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
[oracle@bys001 ~]$ echo $NLS_LANG                      
AMERICAN_AMERICA.ZHS16GBK
[oracle@bys001 ~]$ sqlplus bys/bys
BYS@bys1>create table test(id number,name varchar2(10));

Table created.
注意:這裡insert into test values(1,'白');
我使用SSH SECURE SHELL終端工具連到遠端LINUX中,然後再從資料庫所在主機使用SQLPLUS登陸,
這個插入的語句我是先在文字文件中寫好再複製到SQLPLUS終端裡的。我直接在終端中輸入漢字不行。
BYS@bys1>insert into test values(1,'白');
1 row created.
BYS@bys1>commit;
Commit complete.
BYS@bys1>select * from test;
        ID NAME
---------- --------------------
         1 白

會話2:
[oracle@bys001 ~]$ export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
[oracle@bys001 ~]$ echo $NLS_LANG                      
AMERICAN_AMERICA.AL32UTF8
[oracle@bys001 ~]$ sqlplus bys/bys

BYS@bys1>select * from test;

        ID NAME
---------- ----------
         1 緗

相關文章