小弟现在知道是字符集的错误,是由于原来的数据库和现在数据库字符集不一致导致的吧?但是我以前和现在都是UTF8啊,请问在导入的时候可不可以避开这个字符集的问题,如果不行.怎么解决呀?

解决方案 »

  1.   

    强行修改服务器端ORACLE当前字符集  ---- 在用imp命令加载数据前,先在客户端用sql*plus登录system DBA用户,执行下列SQL语句进行当前ORACLE数据库字符集修改:   SQL > create database  character set US7ASCII 
    * create database character set US7ASCII 
          ERROR at line 1: 
    ORA-01031: insufficient privileges ---- 你会发现语句执行过程中,出现上述错误提示信息,此时不用理会,实际上ORACLE数据库的字符集已被强行修改为US7ASCII,接着用imp命令装载数据。等数据装载完成以后,shutdown 数据库,再startup 数据库,用合法用户登录ORACLE数据库,在sql>命令提示符下,运行select * from V$NLS_PARAMETERS,可以看到ORACLE数据库字符集已复原,这时再查看有汉字字符数据的表时,汉字已能被正确显示。