創建t_gtype表:
SQL> create table t_gtype(
2 gtid char(6) primary key,
3 gtname varchar2(20) not null
4 );
插入數據:
SQL> insert into t_gtype values('T00001','日常百貨');
查詢數據中文顯示亂碼:
SQL> select * from t_gtype;
GTID GTNAME
------ --------------------
T00001 ????????
查詢數據庫服務端字符集:
SQL> select * from v$nls_parameters;
NLS_DATE_LANGUAGE
SIMPLIFIED CHINESE
NLS_CHARACTERSE
ZHS16GBK
服務端字符集爲中文字符集,猜測客戶端字符集問題,退出sql,設置客戶端字符集:
[oracle@apex ~]$ export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
進入sql,重新插入數據:
SQL> insert into t_gtype values ('T00002','兒童用品');
查詢數據顯示,更改客戶端字符集後插入的中文正常顯示,但之前插入的仍顯示爲亂碼:
SQL> select * from t_gtype;
GTID GTNAME
------ --------------------
T00001 ????????
T00002 兒童用品