oracle导数的数据乱码,Oracle10g导数据时中文乱码相关处理

本文详细描述了Oracle数据库在导入数据时遇到的中文乱码问题,通过分析发现是由于默认编码设置不匹配。解决方法包括重新安装数据库并设置默认编码为ZHS16GBK,以及调整函数、存储过程和数据表注释的导入编码。关键步骤包括设置LANG和NLS_LANG环境变量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Oracle导入数据库出现数据库数据中文乱码问题,最后查得是由于数据库安装时,选择编码为默认编码

问题分析:

使用imp导入数据时,屏幕输出过以下提提示信息:

import done in US7ASCII character set and AL16UTF16 NCHAR character set

import server uses WE8ISO8859P1 character set (possible charset conversion)

export client uses ZHS16GBK character set (possible charset conversion)

解决:重新安装数据库,更改默认编码为:ZHS16GBK(从imp导入数据时,输出的日志可以看出,导出数据时,也使用的是ZHS16GBK编码方式导出的

结果:

imp导数据时,屏幕输出就变成如下了:

import done in ZHS16GBK character set and AL16UTF16 NCHAR character set

2.函数、存储过程、数据表注释中文乱码

问题分析:

使用imp导入数据时,屏幕输出过以下提提示信息:

import done in US7ASCII character set and AL16UTF16 NCHAR character set

import server uses ZHS16GBK character set (possible charset conversion)

export client uses ZHS16GBK character set (possible charset conversion)

从上面的信息export client uses ZHS16GBK可以看出导出数据时,使用的编码是ZHS16GBK,所以我们只需要在导入时,把相应的编码设置为ZHS16GBK就行了。

解决:

set LANG=cn_ZH.UTF8

set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export LANG=cn_ZH.UTF8

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

nohup imp bobplms/bobplms@RDPUBLIC file=/home/oracle/ploan225.dmp rows=N ignore=y fromuser=ploan3 touser=bobplms show=y log=/home/oracle/imp_20090608.log&  导数完成后,只是数据表注释更正了。但是函数,存储过程还未更正。 打开imp_20090608.log文件。找出的存储过程及函数,重新执行存储过程及函数的创建既可。   结果: 执行imp导数据时,屏幕输出就如下了: import done in ZHS16GBK character set and AL16UTF16 NCHAR character set

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值