原帖由 lfree 于 2008-1-17 10:59 发表
如果客户端是windows
命令应该是
set nls_lang=AMERICAN_AMERICA. ZHS16GBK
斑竹请看我的测试:
1:服务端字符:
SQL> select * from v$nls_parameters;
PARAMETER VALUE
---------------------------------------------------------------- ----------------------------------------------------------------
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_CHARACTERSET ZHS16GBK
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
PARAMETER VALUE
---------------------------------------------------------------- ----------------------------------------------------------------
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
19 rows selected.
2:客户端查询(NLS_LANG=AMERICAN_AMERICA.US7ASCII,显示乱码)
SQL> select * from app.tablename@posson where rownum<2;
ACC_NBR
------------------------------
CUST_NAME
--------------------------------------------------------------------------------
PROD_NAME DATEA
------------------------------ ------------------------------
4502462
???????????IP??
2 20080116
SQL> !
zs_db1$echo $NLS_LANG
AMERICAN_AMERICA.US7ASCII
3:客户端查询(NLS_LANG=AMERICAN_AMERICA.ZHS16GBK,显示乱码)
zs_db1$export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
zs_db1$sqlplus user/password
SQL*Plus: Release 9.2.0.4.0 - Production on Thu Jan 17 11:18:34 2008
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to:
Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
With the Partitioning option
JServer Release 9.2.0.4.0 - Production
SQL> select * from app.tablename@posson where rownum<2;
ACC_NBR
------------------------------
CUST_NAME
--------------------------------------------------------------------------------
PROD_NAME DATEA
------------------------------ ------------------------------
4502462
???????????IP??
2 20080116
SQL> !
zs_db1$echo $NLS_LANG
AMERICAN_AMERICA.ZHS16GBK
zs_db1$