学习Oracle时,描述经常会遇到Oracle字符集问题,字符这里将介绍Oracle字符集问题的全面解决方法。Oracle字符集是描述一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。Oracle 支持国家语言的字符体系结构允许你使用本地化语言来存储,处理,全面检索数据。描述它使数据库工具,字符错误消息,全面排序次序,描述日期,字符时间,货币,数字,和日历自动适应本地化语言和平台。
- SELECT * FROM V$NLS_PARAMETERS
- NLS_LANGUAGE SIMPLIFIED CHINESE
- NLS_TERRITORY CHINA
- NLS_CURRENCY RMB
- NLS_ISO_CURRENCY CHINA
- NLS_NUMERIC_CHARACTERS .,
- NLS_CALENDAR GREGORIAN
- NLS_DATE_FORMAT DD-MON-RR
- NLS_DATE_LANGUAGE SIMPLIFIED CHINESE
- NLS_CHARACTERSET AL32UTF8
- NLS_SORT BINARY
- NLS_TIME_FORMAT HH.MI.SSXFF AM
- 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 RMB
- NLS_NCHAR_CHARACTERSET UTF8
- NLS_COMP BINARY
- NLS_LENGTH_SEMANTICS BYTE
- NLS_NCHAR_CONV_EXCP FALSE
如何查询Oracle字符集
Oracle有三方面的字符集,一是oracel server端的字符集,二是Oracle client端的字符集;三是dmp文件的字符集。在做数据导入的时候,需要这三个字符集都一致才能正确导入。
1.查看oracel server端的字符集
- select userenv('language') from dual;
- SIMPLIFIED CHINESE_CHINA.AL32UTF8
2.查看dmp文件的字符集
用Oracle的exp工具导出的dmp文件也包含了字符集信息,dmp文件的第2和第3个字节记录了dmp文件的字符集。如果dmp文件不大,比如只有几M或几十M,可以用UltraEdit打开(16进制方式),看第2第3个字节的内容,如0354,然后用以下SQL查出它对应的字符集:
- select nls_charset_name(to_number('0354','xxxx')) from dual
3.查看Oracle client端的字符集
是注册表里面相应OracleHome的NLS_LANG。还可以在dos窗口里面自己设置,比如:set nls_lang=AMERICAN_AMERICA.ZHS16GBK这样就只影响这个窗口里面的环境变量。以上介绍Oracle字符集。
【编辑推荐】
(责任编辑:知识)
提前132天!向家坝升船机完成年度设计货运量指标 通航效益再创佳绩
中煤集团8月份创迎峰度夏保供单月产量新高 严格执行煤炭稳价政策
中远海运承建世界最大天然气处理浮式储卸油平台竣工 储油量不低于144万桶
富瀚微(300613.SZ)公布消息:就收购眸芯科技32.43%股权已完成工商变更登记
江苏连云港港30万吨级航道全面建成 稳固连云港港国际枢纽港地位