问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

oracle的开发gonj工具developer怎么更改数据库字符集

发布网友 发布时间:2022-05-05 21:58

我来回答

2个回答

懂视网 时间:2022-05-06 02:20

Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言

Oralce 字符集浅谈

Oracle字符集是我经常遇到的问题.

设置window的字符集:regedit->HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOMEO->NLS_LANG
windows本身:SIMPLIFIED
AMERICAN_AMERICA.ZHS16GBK

在DOS下查看字符集:echo %NLS_LANG%

在不同数据库做数据迁移、同其它系统交换数据等,常常因为字符集不同而导致迁移失败或数据库内数据变成乱码。现在我将oracle字符集相关的一些知识做个简单总结

一、什么是oracle字符集

Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据。它使数据库工具,错误消息,排序次序,日期,时间,货币,数字,和日历自动适应本地化语言和平台。

影响oracle数据库字符集最重要的参数是NLS_LANG参数。它的格式如下:

NLS_LANG = language_territory.charset

它有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。其中:

Language 指定服务器消息的语言,territory 指定服务器的日期和数字格式,charset 指定字符集。如:AMERICAN _ AMERICA. ZHS16GBK

从NLS_LANG的组成我们可以看出,真正影响数据库字符集的其实是第三部分。所以两个数据库之间的字符集只要第三部分一样就可以相互导入导出数据,前面影响的只是提示信息是中文还是英文。

二、如何查询Oracle的字符集

很多人都碰到过因为字符集不同而使数据导入失败的情况。这涉及三方面的字符集,,一是oracel server端的字符集,二是oracle client端的字符集;三是dmp文件的字符集。在做数据导入的时候,需要这三个字符集都一致才能正确导入。

1、查询oracle server端的字符集

有很多种方法可以查出oracle server端的字符集,比较直观的查询方法是以下这种:

SQL>select userenv(‘language’) from dual;

结果类似如下:AMERICAN _ AMERICA. ZHS16GBK

2、如何查询dmp文件的字符集

用oracle的exp工具导出的dmp文件也包含了字符集信息,dmp文件的第2 和第3个字节记录了dmp文件的字符集。如果dmp文件不大,比如只有几M或几十M,可以用UltraEdit打开(16进制方式),看第2第3个字节的内容,如0354,然后用以下SQL查出它对应的字符集:

SQL> select nls_charset_name(to_number(‘0354′,’xxxx’)) from dual;

ZHS16GBK

如果dmp文件很大,比如有2G以上(这也是最常见的情况),用文本编辑器打开很慢或者完全打不开,可以用以下命令(在unix主机上):

cat exp.dmp |od -x|head -1|awk ‘{print $2 $3}’|cut -c 3-6

然后用上述SQL也可以得到它对应的字符集。

3、查询oracle client端的字符集

这个比较简单。在windows平台下,就是注册表里面相应OracleHome的NLS_LANG。还可以在dos窗口里面自己设置,比如:

set nls_lang=AMERICAN_AMERICA.ZHS16GBK

这样就只影响这个窗口里面的环境变量。

在unix平台下,就是环境变量NLS_LANG。

$echo $NLS_LANG

AMERICAN_AMERICA.ZHS16GBK

如果检查的结果发现server端与client端字符集不一致,请统一修改为同server端相同的字符集。

linux

热心网友 时间:2022-05-05 23:28

Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系。ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据。它使数据库工具,错误消息,排序次序,日期,时间,货币,数字,和日历自动适应本地化语言和平台。

影响oracle数据库字符集最重要的参数是NLS_LANG参数。

它的格式如下:   NLS_LANG = language_territory.charset

它有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
桑葚干直接吃还是泡水喝比较好桑葚干直接吃补肾吗 桑葚干泡水吃好还是干吃好 益智仁脑素神经酸片的功效与作用有哪些 黄冈师范学院师范专业有哪些 语文教育专业考研方向分析 黄冈师范学院语文教育专科毕业能拿教师资格证吗 php保留数字小数点后两位的方法 梦见被后咬 梦见母亲给赔鸡钱补了十二元的预兆 梦见门掉下来要二十五元修理费 为什么养金鱼养单不养双 夏思潼名字测试,思潼的义意? 取名思潼是什么意思 孩子前段时间老流鼻血,今天发现鼻子里长了肉瘤快把鼻孔堵死了,怎么回事 修改后,我已删除的好友还能再找到我吗? 家长怎样对孩子进行生命安全教育 幼儿生命教育涉及哪些方面 用几句话描述一下雷雨前后的景象, 答案 雷阵雨来了,是什么情景 雷阵雨来临前的景象 雷雨课文描写了什么自然现象 雷雨前、雷雨时、雷雨后的情景 雷雨前,雷雨中,雷雨后的情景是怎样? 苹果11突然为什么跳出来一个窗口显示设置我的新iphone? 请问苹果11老是跳出需要登录的界面是为什么? iphone 11微信发来会有弹窗吗 200平米办公区域由于装修考虑欠佳造成空气不流通,有没有超静音大换气量的换气扇,不考虑成本 肯德基玉米棒怎么煮 怎样煮出和肯德基一样好吃的玉米 肯德基奶油玉米怎么做如何做好 八岁小孩鼻子里有肉球是什么病 请问董思潼男孩名是什么意思 冷露无声湿桂花的上句 冷露无声湿桂花的上一句? 中庭地白树栖鸦 ,冷露无声湿桂花出自那首诗,作者是谁? 冷露无声湿桂花出自哪首诗上一句是什么 中庭地白树栖鸦,冷露无声湿桂花的前两句 冷露无声湿桂花的上一句是 冷露无声湿桂花上句 女孩取名思潼还是恩潼好? “冷落无声湿桂花”的前一句 中庭地白树栖鸦 冷露无声湿桂花什么意思 黄思潼好还是黄恩潼好,女孩名要哪个? 中庭地白树栖鸦,冷露无声湿桂花,今夜月明人尽望。不知秋思落谁家的意 ... 对冷露无声湿桂花的理解 中庭地白树栖鸦,冷露无声湿桂花是什么意思 中庭地白树栖鸦的上一句 冷露无声湿桂花句中色冷表现了诗人怎样的心情 中庭地白树梄鸦,冷露无声湿桂花。今夜月明人尽望,不知秋思落谁家? 诗中描绘的景象是什么? 猜节日:中庭地白树栖鸦,冷露无声湿桂花