查看及修改Oracle编码格式方法



首先查看oracle数据库的编码

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

当然字符集最好不要轻易修改,因为这会对数据库的数据有直接的影响,如果是生产环境的话,可能会造成不可估计得损失。

查看及修改Oracle编码格式方法

时间: 2024-08-03 13:25:17

查看及修改Oracle编码格式方法的相关文章

如何查看及修改oracle编码格式方法

--查看oracle数据库字符集: select userenv('language') from dual; 查询结果: SIMPLIFIED CHINESE_CHINA.AL32UTF8 --修改oracle数据库字符集:(在SQL Plus中) sql> conn / as sysdba; sql> shutdown immediate; database closed. database dismounted. oracle instance shut down. sql> st

Mysql的Root密码忘记,查看或修改的解决方法

Mysql的Root密码忘记,查看或修改的解决方法:1.首先启动命令行2.在命令行运行:taskkill /f /im mysqld-nt.exe3.继续在命令行运行:mysqld-nt --skip-grant-tables4.新开一个命令行运行:mysql -u root (如果没有配置mysql的bin环境变量的话需要切换到bin目录下执行此语句) 如果不想改密码,只是想看原来的密码的话.可以在命令行执行这个语句 select host,user,password from mysql.u

[原创] 查看与修改oracle数据库字符集

NLS_LANG参数格式 NLS_LANG=<language>_<territory>.<client character set> Language:显示oracle消息,校验,日期命名    Territory:指定默认日期.数字.货币等格式    Client character set:指定客户端将使用的字符集 例如:NLS_LANG=AMERICAN_AMERICA.ZHS16GBK     AMERICAN是语言,AMERICA是地区,ZHS16GBK是客

linux查看及修改时区的方法

1.查看系统时区: 方法1: [[email protected] ~]# date -R Sun, 07 Sep 2014 23:10:23 -0400 方法2: [[email protected] ~]# cat /etc/sysconfig/clock # The ZONE parameter is only evaluated by system-config-date. # The timezone of the system is defined by the contents o

查看和修改Oracle数据库字符集

1.查询oracle server端的字符集 SQL> select userenv('language') from dual; USERENV('LANGUAGE') ---------------------------------------------------- AMERICAN_AMERICA.ZHS16GBK SQL>  或者 SQL> set line 150 SQL> col parameter for a30 SQL> col value for a3

查看、修改oracle字符集,查看oracle版本

1.查看数据库字符集 数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集. 客户端字符集环境select * from nls_instance_parameters,其来源于v$parameter, 表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表 会话字符集环境 select * from nls_session_parameters,其来源于v$nls_parameters,表示会话自己的设

MySQL查看和修改字符集的方法

一.查看字符集 1.查看MYSQL数据库服务器和数据库字符集 方法一:show variables like '%character%';方法二:show variables like 'collation%'; 方法 一 mysql> show variables like '%character%';+--------------------------+--------------------------------------+| Variable_name | Value |+----

Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)

顺便介绍一点win8启动运行 1.win键 + R键 2.Win8虽然取消了开始菜单,不过把鼠标移动到屏幕左下角(原开始菜单处),待Metro界面的缩略图出现,再在Metro界面缩略图上点击鼠标右键,会出现一个右键菜单,里面有运行(R) 正文: (来自http://m.jb51.net/article/38473.htm) 1.在命令行运行:taskkill /f /im mysqld-nt.exe 下面的操作是操作mysql中bin目录下的一些程序,如果没有配置环境变量的话,需要切换到mysq

Oracle字符集的查看查询和Oracle字符集的设置修改

本文主要讨论以下几个部分:如何查看查询oracle字符集. 修改设置字符集以及常见的oracle utf8字符集和oracle exp 字符集问题. 一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库工具,错误消息,排序次序,日期,时间,货币,数字,和日历自动适应本地化语言和平台. 影响Oracle数据库字符集最重要的参数是NLS_LANG参数.