要将文件中第97到496的字符数据导入到F1字段中[nvarchar2(400)]类型,但这一块的字符全是乱码(偶尔也存在能正常显示的汉字),文件中绝大部分的乱码记录都能正确导入,只有一部分不能正常导入报“多字节字符错误”,请问这是为啥~~~
字符集:zhs16gbk
oracle 9i

解决方案 »

  1.   

    如果存在中英文或者英文标点,那么你如果选择97开始,可能会是中文的部分字节,也可能是完整的一个字,如果是中文字的部分字节就导致乱码了。
      

  2.   

    97以前都是帐号金额一类的正确信息97以后都是乱码,我的情况不是因为97开始取字符而导致原本正确的汉字
    字符串变成乱码,而是原文件里就包含乱码我只想把97开始后的乱码字符全部入库,
    但是有一部分记录却报“多字节字符错误”
    这是其中一条报错记录:
    ---------------------------------------------------------------------------------------------
      302   91   11 66662008-10-1913.09.5800000000000000000  1  04    0    0        3??*?**??*?????*@痱瘗貂耩箴蝰蝮篚耨@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                                                  痼痱痧瘀耱瘃  瘀躔瘅@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                                                  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,  聩`