zoukankan      html  css  js  c++  java
  • Oracle将英文字符集数据转换成中文

    转换背景:老系统数据为英文字符集,需要将老数据(Oracle 8i)转换到oracle 10g(中文字符集)中

    思路:先将老数据从8i的数据库中导出,导出的数据库文件为英文字符集,再将10g的数据库改成英文字符集,改完后将刚才导出的数据库导入到10g中,查看中文数据是否乱码[注意:如果使用Toad 10的工具的话,因为本身Toad 10客户端使用的是英文字符集,所以显示的还是乱码,我们可以进入到sqlplus命令行查看数据是否为乱码],如果不乱吗,则将10g数据库改成中文字符集

    查看当前字符集命令

    SQL> select userenv('language') from dual;
    
    USERENV('LANGUAGE')
    
    ----------------------------------------------------
    
    SIMPLIFIED CHINESE_CHINA.ZHS16GBK

    具体操作:

    1、在原数据库(字符集为英文)执行sqlplus,连接sys用户,修改字符集参数,然后退出。  
      

    SQL> conn / as sysdba;
    update props$ set value$ = ‘ZHS16GBK‘  where name =‘NLS_CHARACTERSET‘;  
    update props$ set value$ = ‘ZHS16GBK‘ where name = ‘NLS_NCHAR_CHARACTERSET‘;  
    commit;  
    SQL> quit;  

    2、执行svrmgrl,关闭并重新开启Oracle数据库  

       

    SVRMGR> connect user/pwd;
    SVRMGR> shutdown immediate;  
    SVRMGR> startup mount;  
    SVRMGR> alter system enable restricted session;  
    SVRMGR> alter system set job_queue_processes=0;  
    
    SVRMGR> alter system set aq_tm_processes=0;  
    SVRMGR> alter database open;  
    SVRMGR> alter database character set internal_use WE8ISO8859P1;  
    SVRMGR> shutdown immediate;  
    SVRMGR> exit;  

    3、执行regedit,将键值HKEY_LOCAL_MACHINESoftwareORACLENLS_LANG  

        由     SIMPLIFIED CHINESE_CHINA.ZHS16GBK
        转换为    AMERICAN_AMERICA.WE8ISO8859P1 
      
    4、执行exp导出数据(到处前查看数据是否为中文)  
      
    5、执行regedit将键值HKEY_LOCAL_MACHINESoftwareORACLENLS_LANG  
        由AMERICAN_AMERICA.WE8ISO8859P1
        恢复为 SIMPLIFIED CHINESE_CHINA.ZHS16GBK  
      
    SQL> quit;  
      
    6、重复步骤2,关闭并重新开启Oracle数据库  
      
    7、将导出的dmp文件导入目标数据库(字符集为中文)

  • 相关阅读:
    LeetCode 382. Linked List Random Node
    LeetCode 398. Random Pick Index
    LeetCode 1002. Find Common Characters
    LeetCode 498. Diagonal Traverse
    LeetCode 825. Friends Of Appropriate Ages
    LeetCode 824. Goat Latin
    LeetCode 896. Monotonic Array
    LeetCode 987. Vertical Order Traversal of a Binary Tree
    LeetCode 689. Maximum Sum of 3 Non-Overlapping Subarrays
    LeetCode 636. Exclusive Time of Functions
  • 原文地址:https://www.cnblogs.com/siyunianhua/p/4226116.html
Copyright © 2011-2022 走看看