1.字符集相关知识、如何查看字符集
Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据。它使数据库工具,错误消息,排序次序,日期,时间,货币,数字,和日历自动适应本地化语言和平台。
如何查询Oracle的字符集ORACLE有三方面的字符集,
一 是oracel server端的字符集,二是oracle client端的字符集;三是dmp文件的字符集。在做数据导入的时候,需要这三个字符集都一致才能正确导入。
查看oracel server端的字符集select userenv('language') from dual;
查看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
--查看oracel client端的字符集 是注册表里面相应OracleHome的NLS_LANG。(检查客户端注册表,打开注册表编辑程序(RegEdit),在HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/NLS_LANG)还可以在dos窗口里面自己设置,比如: set nls_lang=AMERICAN_AMERICA.ZHS16GBK 这样就只影响这个窗口里面的环境变
查看所有参数:
select * from V$NLS_PARAMETERS;
其中,字符集的关键词是:NLS_CHARACTERSET
其他参数:
language 指定服务器消息的语言。
territory 指定服务器的日期和数字格式。
NLS_CHARACTERSET 指定字符集
还有一些子集可以更明确定义NLS_LANG参数:
NLS_DATE_FORMAT 缺省的日期格式
NLS_DATE_LANGUAGE 缺省的日期语言
NLS_NUMBERIC_CHARACTERS 小数字符和组分隔开
NLS_CURRENCY 本地货币字符
NLS_ISO_CURRENCY ISO货币字符
NLS_SORT 字符排序序列
指定查看关键词:
select value$ from props$ where name='NLS_CHARACTERSET'
有3个参数需要特别注意:有三个参数需要特别注意:
NLS_LANGUAGE NLS_TERRITORY NLS_CHARACTERSET
2 如何修改字符集
一、更改客户端字符集为US7ASCII
D:\>SET NLS_LANG=AMERICAN_AMERICA.US7ASCII
更改客户端字符集为ZHS16GBK
D:\>SET NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
二、更改服务器字符集为ZHS16GBK (实践成功)
SQL> update props$ set value$='ZHS16GBK' WHERE NAME='nls_language';
alter system set nls_language=ZHS16GBK
很多情况下,单纯地去更改服务端的字符集,也无法解决问题,还可能造成大错!
分享到:
相关推荐
### Oracle 修改字符集 在Oracle数据库管理中,有时我们需要更改数据库的字符集以适应不同的语言环境或解决数据兼容性问题。本文将详细介绍如何修改Oracle数据库的字符集,并提供实际操作步骤。 #### 一、理解...
### Oracle字符集的查看与客户端字符集的修改 #### 一、Oracle字符集的基本概念 在Oracle数据库系统中,字符集(charset)是用于表示文本数据的编码方式。正确设置和管理字符集对于确保数据的一致性和正确性至关重要...
首先,确保你有数据库的系统管理员权限,因为修改字符集需要以SYSDBA身份进行。在Windows环境下,打开命令行窗口(cmd),并设置ORACLE_SID环境变量,将其值设置为你想要修改的数据库SID。例如: ```bash set ...
需要注意的是,在8i及以上版本的Oracle数据库中,可以通过`ALTER DATABASE`命令来修改字符集,但只能从一个字符集的子集转换到其超集,并且这种操作可能会导致数据丢失或损坏。 1. **修改数据库字符集的步骤** - ...
安装ORACLE数据库,字符集默认是AL32UTF8,有时需要改变数据库字符集,改成ZHS16GBK,资源里面是修改步骤。
Linux 下 Oracle 中文乱码字符集设置 Linux 下的 Oracle 数据库在导入数据库时...Linux 下的 Oracle 数据库中出现中文乱码问题可以通过修改字符集格式来解决,将字符集格式修改成支持中文的格式可以正常显示中文字符。
本文将深入探讨Oracle数据库的导入导出命令,特别是如何更改字符集的相关知识。 首先,Oracle数据库提供了两种主要的数据导入导出工具:`expdp`(Export Data Pump)和`impdp`(Import Data Pump)。这两个实用程序...
"Oracle英文字符集插入到中文字符集"的主题聚焦于如何在不同字符集之间进行有效转换,以便在不修改客户端环境变量的情况下,实现数据的正确存储和检索。 Oracle数据库系统支持多种字符集,字符集决定了数据库如何...
为了安全地修改字符集,我们需要先关闭数据库实例: ```sql SQL> shutdown immediate; ``` 关闭成功后,会输出以下消息: ``` Database closed. Database dismounted. ORACLE instance shut down. ``` ##### 3. ...
在修改字符集之前,确保所有数据都能正确转换,并备份重要的数据库内容。 3. **停用数据库服务** 在开始更改前,关闭Oracle XE服务,可以通过服务管理器或命令行执行: ``` net stop oracleXETNSListener ...
### 修改Oracle数据库字符集的方法 #### 背景与意义 在使用Oracle数据库的过程中,可能会遇到需要更改数据库字符集的情况。这通常发生在原有字符集不能满足新的业务需求时,例如需要支持更多的语言或特殊字符。...
本篇将深入探讨Oracle字符集的查看、修改、导入导出以及转换原理。 一、Oracle字符集的查看 在Oracle中,可以通过以下SQL查询来查看当前数据库的字符集设置: ```sql SELECT * FROM NLS_DATABASE_PARAMETERS ...
本文将深入探讨 Oracle 字符集的查看、修改以及相关知识。 首先,Oracle 字符集是一个字节数据的解释集合,具有大小和包容性关系。Oracle 的国家语言支持架构允许使用本地语言存储、处理和检索数据,包括错误消息、...
在Oracle 11g数据库管理中,更改字符集是一项关键且复杂的操作,它涉及到数据库的启动、关闭以及系统参数的调整。以下是从标题、描述、标签及部分内容中提炼出的知识点,详细阐述了如何在Oracle 11g中更改字符集。 ...
在开始修改字符集之前,首先需要确认当前数据库使用的字符集。可以通过以下两种方式来检查: - **查询数据库参数**:使用`select * from sys.nls_database_parameters;`来查看数据库级别的字符集设置。 - **查询...
在Oracle11g环境下,可能会遇到需要更改数据库字符集的情况,例如从AL32UTF8修改为ZHS16GBK。这种变更通常发生在需要支持特定语言环境的应用场景中,尤其是当应用主要面向中文用户时,采用ZHS16GBK字符集可以更好地...