• Linux下oracle中文编码设置问题


    最近项目要用到oracle数据库。期间遇到一些中文乱码问题。经过一番痛苦的折腾,中文能正常显示了,现把过程介绍如下:

    1 首先查看linux的语言设置echo $LANG ,本人的LINUX上为zh_CN.UTF8

    2 查看oracle的字符编码:本人oracle数据库版本为10.2.0.1

    select *from nls_database_parameters;

    3 用sysdba用户修改字符编码为AL32UTF8(UTF-8的编码子集)

    alter database character set AL32UTF8;

    如果遇到不能修改,则调用以下步骤:

    alter system enable restriced session;

    alter system set job_queue_processes=0;

    alter system set aq_tm_processes=0;

    alter database open;


    然后,alter database character set AL32UTF8;

    当系统提示字符集必须为旧字符集的超集时,可用下面的句强制修改字符集

    alter database character set internal_use AL32UTF8;

    4 修改.bash_profile文件的语言设置(oracle客户端,该文件在用oracle用户登录的默认目录下)

    增加export NLS_LANG=AMERICAN_AMERICA.UTF8或将NLS_LANG修改为AMERICAN_AMERICA.UTF8   ,保存。

    5 导入客户端配置

    source .bash_profile

    6 重启数据库

    shutdown immediate;

    startup mount;

    7 登录oralce数据库,插入中文字符,select 查询的内容正常。

    通过调用OCI库中的函数插入中文数据,用select显示也正常。

    中文编码问题解决!

  • 相关阅读:
    squid代理缓存服务
    部署网络存储ISCSI
    电子邮局系统
    使用DHCP动态管理主机地址
    vsftp -samba-autofs
    python初学 | 循环for while
    python初学 | 条件语句if
    python初学 | set
    python初学 | 字典dictionary
    python初学 | 元组tuple
  • 原文地址:https://www.cnblogs.com/isrc/p/2784445.html
Copyright © 2020-2023  润新知