zoukankan      html  css  js  c++  java
  • oracle字符集问题

    oracle 8.1.7 不支持ZHS32GB18030。
    用oracle 8.1.7客户端连oracle9数据库:
    export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS32GB18030"后连接数据库会出现:ORA-12705:指定了无效或未知的NLS参数值
    如果用其它字符集代替,如ZHS16CGB231280,连上数据库做一般查询没问题,中文也能正常显示,但不能bind变量。如:
    $sql="begin select 1 into :user_no from dual;end;";
    $statement=ociparse($conn,$sql);
    ocibindbyname($statement,":user_no",$user_no,20);
    ociexecute($statement);
    print $user_no;

    出错:
    ORA-06550: line 1, column 21: PLS-00553: character set name is not recognized ORA-06550: line 0, column 0: PL/SQL: Compilation unit analysis terminated

    google了两天没找到解决办法。

    字符集相关查询:
    1、查看当前版本支持的字符集:
    SELECT UNIQUE VALUE FROM V$NLS_VALID_VALUES
          WHERE PARAMETER ='CHARACTERSET';
    2、查看当前实例采用的字符集:
    select userenv('language') from dual
  • 相关阅读:
    Qt 智能指针学习(7种指针)
    Springmvc+Spring+Hibernate搭建方法
    DDD分层架构之领域实体(基础篇)
    LeetCode
    RabbitMQ
    Cocos2d-x环境搭建
    使用快捷键提升C#开发效率
    C# 6.0
    avalonjs 1.3.7发布
    VS2015安装
  • 原文地址:https://www.cnblogs.com/amonw/p/646271.html
Copyright © 2011-2022 走看看