zoukankan      html  css  js  c++  java
  • [转]将oracle数据库的编码变成utf-8

    1、改客户端字符集:通过WINDOWS的运行菜单运行Regedit,修改注册表

    Start -> Run -> Rededit <-|

    Under registry Editor - > HKEY_LOCAL_MACHINE -> SOFTWARE ->Oracle->KEY_XE->RIGHT WINDOW DOUBLE CLICK NLS_LANG -> CHANGE VALUE TO "AMERICAN_AMERICA.UTF8" ->OK ->CLOSE REGISTRY

    正确设置oracle客户端字符集的方法:

    oracle客户端字符集设置需要和服务器端一致,否则会出现乱码问题。

    首先连接服务器,查询服务器端设置:

    select * from v$nls_parameters;

    找到:

    NLS_LANGUAGE

    NLS_TERRITORY

    NLS_CHARACTERSET

    环境变量nls_lang便是由这三部分组成

    NLS_LANG = language_territory.charset

    比如:

    NLS_LANG = American_Japan.JA16SJIS

    2、改服务器端字符集,通过ORACLE的SQL PLUS命令窗口改

    在SQL*PLUS 中,以DBA登录

    conn 用户名 as sysdba

    然后执行以下命令

    >shutdown immediate; (把database停了)

    >startup mount; (把database重开去可更改情況)

    >alter system enable restricted session;

    >alter system set job_queue_processes=0;

    >alter system set aq_tm_processes=0;

    >alter database open;

    >alter database character set utf8;

    OR

    >alter database character set internal_use utf8;(这条命令是强制转换编码格式,有可能会导致数据库中的中文变成乱码)

    >shutdown immediate;

    >startup; (重开正常oracle)

    ORACLE数据库字符集修改完成!

    数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集。

    客户端字符集环境select * from nls_instance_parameters,其来源于v$parameter,

  • 相关阅读:
    MySQL--单表查询
    python库--pandas--Series.str--字符串处理
    如何 grep tab & 如何grep 减号(dash)
    png压缩
    如何无密码登陆远程机器?
    ssh中运行awk
    PHP 时区
    sublime使用
    nginx 50x故障分析
    nginx反向代理异常
  • 原文地址:https://www.cnblogs.com/jasonHome/p/7253114.html
Copyright © 2011-2022 走看看