这个是字符集转换的问题,是你导出和导入的客户端字符集和dmp文件字符集不一致。
解决办法:
在linux环境变量里加上
export LANG =zh_CNgb2312
或者导入的时候先输入export LANG =zh_CNgb2312
是客户端字符集和服务端字符集不一致所致:
查看 LANG,NLS_LANG属性
AMERICAN_AMERICANZHS16GBK
SIMPLIFIED CHINESE_CHINAZHS16GBK
oracle配置的问题
客户端都配置了变量NLS_LANG=AMERICAN_AMERICAZHS16GBK
WINDOWS注册表也要改:
>
这个你,看看你的jdk是不是有多个版本?如果你是java开发者,并且装的oracle的jdk版本和你开发使用的jdk不是一个的话,要看你的系统环境变量里面引用的是哪个jdk,然后把lib文件夹下面的文件拷过去
oracle我还不懂,不过我在mssqlsever中也遇到过这样的问题,折腾半天才解决。举个例子在创建表的时候,含有中文的我用nvarchar不用varchar,并且在含有中文的数据之前加个大写的N。如:
//建表
create table T_Preson(ID int not null,F_Name nvarchar not null,F_Age int not null)
//插入数据
insert into T_Preson(ID,F_Name,F_Age) values (1,N'小张',22);
我刚开始学数据库,不知道我的方法对你有没有用,如果回答的不对,请别喷我啊。
这种问题据我所知在两种情况下会出现,
1、数据库里存放的是韩文之类的非简体中文,而客户端未安装对应的语音包,那么显示有可能就都为“?”或“口”;
2、服务器或客户端无法识别此类编码,请先查看服务器是否可以识别,如果可以在查客户端是否识别服务器传输的编码
以上就是关于linux下,oracle的视图中中文变问号了,描述有点长,请不吝赐教全部的内容,包括:linux下,oracle的视图中中文变问号了,描述有点长,请不吝赐教、oracle 插入中文查询显示乱码,问号是什么原因、C# webservice 向oracle数据库插入中文变成问号等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)