SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';
PARAMETER
--------------------
VALUE
--------------------
NLS_CHARACTERSET
AL32UTF8
这其来源于props$,这是表示数据库的字符集。
oracle客户端编码
SQL> select * from nls_instance_parameters where parameter='NLS_LANGUAGE';
PARAMETER
--------------------
VALUE
--------------------
NLS_LANGUAGE
SIMPLIFIED CHINESE
其来源于v$parameter,表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表会话字符集环境
select * from nls_session_parameters,其来源于v$nls_parameters,表示会话自己的设置,可能是会话的环境变量或者是alter session完成,如果会话没有特殊的设置,将与nls_instance_parameters一致。
再来说一下怎么修改oracle的字符集:
目前我的数据库环境的字符集是AL32UTF8,那么把它改成ZHS16GBK
1.首先以sysdba的身份登录上去 conn /as sysdba
2.关闭数据库shutdown immediate;
3.以mount打来数据库,startup mount
4.设置session
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
5.启动数据库
alter database open;
6.修改字符集
ALTER DATABASE CHARACTER SET ZHS16GBK;
这会可能会报错,提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更改:
ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
这条语句就可以了,TERNAL_USE提供的帮助就会使oracle绕过了子集与超集的验证,这条语句和上面的语句内部操作时完全相同的。
7.关闭,重新启动
SQL>shutdown immediate;
SQL> startup
当然字符集最好不要轻易修改,因为这会对数据库的数据有直接的影响,如果是生产环境的话,可能会造成不可估计得损失。
- 浏览: 34494 次
- 性别:
- 来自: 北京
相关推荐
首先查看oracle数据库的编码 SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET'; PARAMETER ——————– VALUE ——————– NLS_CHARACTERSET AL32UTF8 这其来源于props$,这...
本文将深入探讨如何修改Oracle数据服务器的编码,以满足不同语言环境的需求,确保数据的正确存储和检索。 Oracle数据库支持多种字符集(Charset),包括ASCII、AL32UTF8(即UTF-8)、ZHS16GBK等,这些字符集用于...
Oracle 12C修改编码集的步骤是为了确保数据正确显示,避免乱码问题。以下是一些关键知识点和解决方法: 1. **查看当前数据库字符集**: 使用`SELECT userenv('language') FROM dual;`查询当前会话的语言环境和字符...
Oracle 字符集查看与修改 Oracle 字符集是一个字节数据的解释的符号集合,具有大小之分,具有相互的包容关系。Oracle 支持国家语言的体系结构允许使用本地化语言来存储、处理、检索数据。 一、什么是 Oracle 字符...
当需要在不同的操作系统或者不同的客户端应用之间传输数据时,可能需要修改Oracle客户端的字符集设置以匹配服务器端的字符集。 1. **在Windows操作系统中修改**: - 打开注册表编辑器(`regedit`)。 - 寻找键值`...
1. **字符集定义**:字符集(Character Set)是一组符号及编码规则的集合,用于存储和处理文本数据。 2. **Oracle中的字符集类型**: - **国家字符集**(National Character Set):如`AL32UTF8`,主要用于存储...
### Oracle编码规范详解 #### 一、概述 Oracle数据库作为一种广泛使用的数据库管理系统,在企业级应用中扮演着重要的角色。为了确保代码的一致性和可维护性,制定一套标准的Oracle编码规范至关重要。本文将详细...
本文将提供一个详细的解决方案,包括查看和修改数据库服务器端的字符编码、查看和修改客户端字符集的设置方法。 一、查看和修改数据库服务器端的字符编码 在Oracle数据库中,字符编码是由NLS_DATABASE_PARAMETERS...
本文将深入探讨 Oracle 字符集的查看、修改以及相关知识。 首先,Oracle 字符集是一个字节数据的解释集合,具有大小和包容性关系。Oracle 的国家语言支持架构允许使用本地语言存储、处理和检索数据,包括错误消息、...
网上基本找不到,sqlserver2012版本链接oracle乱码问题解决实测版。
在Oracle数据库管理与维护过程中,遇到错误编码是常有的事情。理解这些错误编码背后的具体含义对于快速定位问题、解决问题至关重要。以下是对部分Oracle错误编码的详细解析,这将帮助数据库管理员或开发人员更准确地...
在Oracle 10g中,数据库字符集是在创建数据库时设定的,一般不建议后期修改。数据库字符集决定了CHAR、VARCHAR2、CLOB、LONG等数据类型的存储格式,同时也影响表名、列名和PL/SQL变量的表示。国家字符集(NATIONAL ...
### Oracle 字符集的查看与修改 #### 一、Oracle 字符集概述 **Oracle 字符集** 是指 Oracle 数据库系统中用于解释字节数据的一组符号集合。Oracle 支持多国语言架构,这使得用户能够在不同的语言环境下存储、处理...
Oracle存储过程编码规范是数据库开发中的一个重要组成部分,它旨在确保代码的可读性、可维护性和一致性。这份文档,版本号为3.0,主要涵盖了命名规范、注释信息以及错误处理等多个方面,以提升团队协作效率和代码...
### Oracle字符集修改命令详解 #### 一、引言 在Oracle数据库的管理与维护过程中,字符集的正确设置对于确保数据的正确显示与处理至关重要。由于不同的地区和语言环境对于字符编码的需求各异,因此有时可能需要...
Linux 下 Oracle 中文乱码字符集设置 Linux 下的 Oracle 数据库在导入数据库时...Linux 下的 Oracle 数据库中出现中文乱码问题可以通过修改字符集格式来解决,将字符集格式修改成支持中文的格式可以正常显示中文字符。
### Oracle 修改字符集详解 #### 一、背景与目的 在使用Oracle数据库的过程中,有时会遇到需要更改数据库字符集的情况,比如将现有的字符集更改为与操作系统一致的字符集,以便更好地支持多语言环境或者解决数据...