oracle怎么改字符集 oracle19c修改字符集

如何修改Oracle数据库字符集1、改客户端字符集:通过WINDOWS的运行菜单运行Regedit,修改注册表
Start - Run - Rededit -|
Under registry Editor -HKEY_LOCAL_MACHINE - SOFTWARE -ORACLE-KEY_XE-RIGHT WINDOW DOUBLE CLICK NLS_LANG - CHANGE VALUE TO "AMERICAN_AMERICA.UTF8" -OK -CLOSE REGISTRY
正确设置ORACLE客户端字符集的方法:
oracle客户端字符集设置需要和服务器端一致,否则会出现乱码问题 。
首先连接服务器 , 查询服务器端设置:
select * from v$nls_parameters;
找到:
NLS_LANGUAGE
NLS_TERRITORY
NLS_CHARACTERSET
环境变量nls_lang便是由这三部分组成
NLS_LANG = language_territory.charset
比如:
NLS_LANG = American_Japan.JA16SJIS
2、改服务器端字符集,通过ORACLE的SQL PLUS命令窗口改
在SQL*PLUS 中 , 以DBA登录
conn 用户名 as sysdba
然后执行以下命令
shutdown immediate; (把database停了)
startup mount; (把database重开去可更改情况)
alter system enable restricted session;
alter system set job_queue_processes=0;
alter system set aq_tm_processes=0;
alter database open;
alter database character set utf8;
OR
alter database character set internal_use utf8;
shutdown immediate;
startup; (重开正常oracle)
ORACLE数据库字符集修改完成!
如何查看和修改Oracle数据库服务器端的字符集?A、oracle server 端字符集查询
select userenv('language') from dual
其中NLS_CHARACTERSET 为server端字符集
NLS_LANGUAGE 为 server端字符显示形式
B、查询oracle client端oracle怎么改字符集的字符集
$echo $NLS_LANG
如果发现你select 出来的数据是乱码oracle怎么改字符集,请把client端的字符集配置成与linux操作系统相同的字符集 。如果还是有乱码,则有可能是数据库中的数据存在问题 , 或者是oracle服务端的配置存在问题 。
C、server端字符集修改
将数据库启动到RESTRICTED模式下做字符集更改:
SQL conn /as sysdbaConnected.
SQL shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
如果发现你select 出来的数据是乱码,请把client端的字符集配置成与linux操作系统相同的字符集 。如果还是有乱码,则有可能是数据库中的数据存在问题,或者是oracle服务端的配置存在问题 。
. 1.oracle server端字符集查询复制代码代码如下:select userenv('language') from dual;server字符集修改:将数据库启动到RESTRICTED模式下做字符集更改:??
oracle10g服务器端是安装在AIX 6.0系统上 , 客户端是安装在windows server 2008 系统上,客户端与服务器已成功连接,但是数据库表里的中文字无法显示,显示为“?”,用SQLPLUS查得服务器端的字符集为AL16uTF16,如何修改该字符集使之支持中文呢?另外oracle10G客户端的字符集需不需要设置,如何查看和设置呢?
如何修改oracle的字符集编码1. 备份数据库中所有用户的数据
以oracle用户登陆,执行以下命令
# export NLS_LANG = “SIMPLIFIED CHINESE_CHINA.UTF8”
保持与数据库服务器端一致,这样在exp导出时,就不会存在字符的转换了,备份最原始的数据 。
2. 评估UTF8转换成ZHS16GBK的风险
转换之前,要使用Oracle的csscan工具对数据库扫描,评估字符集转换前后,数据有可能的损坏情况 。如果评估情况糟糕,那就绝对要放弃了 。
先安装属于 CSMIG 用户的一套表和过程 。以oracle用户登陆UNIX,
#sqlplus “/ as sysdab”
SQL@$ORACLE_HOME/ rdbms/admin/csminst.sql
SQLexit
# $ORACLE_HOME\bin\csscan -help
可以更清楚如何使用csscan 。
# $ORACLE_HOME/bin/csscan system/sunday user=mmsc FROMCHAR=UTF8 TOCHAR=ZHS16GBK ARRAY=102400 PROCESS=3csscan.log
以上命令意思是扫描用户:mmsc中的所有数据,从字符集UTF8更改为ZHS16GBK的转换情况 。然后得到三个文件:scan.txt、scan.out、scan.err 。
查看scan.out,scan.err , 可以看出mmsc用户下的所有的数据都是可以转换的,并且没有出现转换“Exceptional”的情况,因此可以更放心一点 。
3. 更改数据库的字符集为ZHS16GBK
前面说过,通过命令“Alter Database Characeter Set XXXX”,实现从超集到子集的转换 , 在Oracle是不允许的 。但是该命令,提供这样的命令方式:
Alter Database Character Set INTERNAL_CONVERT/ INTERNAL_USE XXXX
怎么改oracle注册表的字符集编码?通过注册表修改 \x0d\x0aHKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/HOME0\x0d\x0aNLS_LANG 改为oracle怎么改字符集你需要oracle怎么改字符集的字符集. \x0d\x0a\x0d\x0a常用字符集(暂时只收集到两个) \x0d\x0aAMERICAN_AMERICA.WE8ISO8859P1 \x0d\x0aSIMPLIFIED CHINESE_CHINA.ZHS16GBK \x0d\x0aamerican_america.AL32UTF8\x0d\x0a\x0d\x0a 1--------- AMERICAN_AMERICA.zhs16gbk \x0d\x0a 2--------- AMERICAN_AMERICA.utf8
oracle安装后怎么修改字符集数据库字符集在创建后原则上不能更改 。不过有2种方法可行 。
1. 如果需要修改字符集,通常需要导出数据库数据,重建数据库 , 再导入数据库数据的方式来转换 。
2. 通过ALTER DATABASE CHARACTER SET语句修改字符集,但创建数据库后修改字符集是有限制的,只有新的字符集是当前字符集的超集时才能修改数据库字符集,例如UTF8是US7ASCII的超集,修改数据库字符集可使用ALTER DATABASE CHARACTER SET UTF8 。
【oracle怎么改字符集 oracle19c修改字符集】oracle怎么改字符集的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于oracle19c修改字符集、oracle怎么改字符集的信息别忘了在本站进行查找喔 。

    推荐阅读