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
原文地址:https://www.cnblogs.com/amonw/p/646271.html