zoukankan      html  css  js  c++  java
  • 向Oracle数据库插入中文乱码解决方法

    解决方法:
        第一步:sqlplus下执行:select userenv('language') from dual;//查看oracle字符集
         注:如果oracle字符集与后台代码设置的字符集不一致就会出现乱码
        第二步:修改SYS.PROPS$表。即用SYS用户登陆ORACLE后,利用下面语句修改相应的字符集并提交:SQL>UPDATE PROPS$ SET VALUE$=’ZHS16GBK‘WHERE NAME=’NLS_CHARACTERSET’;SQL>COMMIT;

        通过此种方法来更改数据库字符集,只对更改后的数据有效,即数据库中原来的数据仍以原字符集被存储。
       注:使用sys登陆的密码是manager   连接方式为 sysdba

       注:查询数据库字符集(oracle server 端 字符集查询):oracle: select userenv(’language’) from dual;  --查询的是Oracle服务器端字符集

    原文链接---------http://wenda.so.com/q/1408152629727270?src=110

    数据库字符集修改案例:

    Microsoft Windows [版本 10.0.14393]
    (c) 2016 Microsoft Corporation。保留所有权利。

    C:WINDOWSsystem32>sqlplus /nolog

    SQL*Plus: Release 11.2.0.1.0 Production on 星期一 12月 19 09:29:31 2016

    Copyright (c) 1982, 2010, Oracle.  All rights reserved.


    SQL> conn /as sysdba
    已连接。
    SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';

    PARAMETER
    ------------------------------------------------------------
    VALUE
    --------------------------------------------------------------------------------
    NLS_CHARACTERSET
    AL32UTF8


    SQL> shutdown immediate;
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup mount;
    ORACLE 例程已经启动。

    Total System Global Area 3390558208 bytes
    Fixed Size                  2180464 bytes
    Variable Size            2013268624 bytes
    Database Buffers         1358954496 bytes
    Redo Buffers               16154624 bytes
    数据库装载完毕。
    SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;

    系统已更改。

    SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

    系统已更改。

    SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;

    系统已更改。

    SQL> alter database open;

    数据库已更改。

    SQL> ALTER DATABASE CHARACTER SET ZHS16GBK;
    ALTER DATABASE CHARACTER SET ZHS16GBK
    *
    第 1 行出现错误:
    ORA-12712: 新字符集必须为旧字符集的超集


    SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;

    数据库已更改。

    SQL> shutdown immediate;
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup;
    ORACLE 例程已经启动。

    Total System Global Area 3390558208 bytes
    Fixed Size                  2180464 bytes
    Variable Size            2013268624 bytes
    Database Buffers         1358954496 bytes
    Redo Buffers               16154624 bytes
    数据库装载完毕。
    数据库已经打开。
    SQL>

  • 相关阅读:
    gerapy+scrapyd组合管理分布式爬虫
    selenium之chromedriver与谷歌浏览器映射,到谷歌71.0版本的
    windows10下成功安装docker splash及遇到问题的解决方案
    python安装win32api pywin32 后出现 ImportError: DLL load failed
    git客户端安装
    linux相关命令
    springboot集成swagger2
    git远程分支创建,本地分支关联远程分支,第一次发布、更新分支
    spring事件监听机制
    JavaScript页面被卷去的头部兼容性解决方案
  • 原文地址:https://www.cnblogs.com/sunfenqing/p/7285368.html
Copyright © 2011-2022 走看看