pb oracle utf8,用PB连接不同字符集ORACLE方法如下.docx

用PB连接不同字符集ORACLE方法如下

用PB连接不同字符集的ORACLE方法如下:方法一:版本:PB5,PB6,PB8,PB9,PB11说明:通过程序动态修改WINDOW平台中注册表中的NLS_LANG。//修改客户端字符集为ZHS16GBKstring ls_nls_langls_nls_lang = "SIMPLIFIED CHINESE_CHINA. ZHS16GBK"RegistrySet( "HKEY_LOCAL_MACHINE\Software\ORACLE","NLS_LANG",regstring!,ls_nls_lang)//进行数据库连接Connect using sqlca;//重新修改客户端字符集为US7ASCIIls_nls_lang = "AMERICAN_AMERICA.US7ASCII"RegistrySet( "HKEY_LOCAL_MACHINE\Software\ORACLE","NLS_LANG",regstring!,ls_nls_lang)缺点:不太稳定

方法二版本:PB5,PB6,PB8,PB9,PB11说明:通过程序动态修改WINDOW平台中的环境变量的NLS_LANG。//在global external function中增加以下外部API函数FUNCTION ulong SetEnvironmentVariable(ref string lpName,ref string lpValue) LIBRARY "kernel32.dll" ALIAS FOR "SetEnvironmentVariableA"//修改WINDOW平台中环境变量NLS_LANG为ZHS16GBKSetEnvironmentVariableA ("NLS_LANG", "SIMPLIFIED CHINESE_CHINA. ZHS16GBK")//进行数据库连接Connect using sqlca;//修改回WINDOW平台中环境变量NLS_LANG为US7ASCIISetEnvironmentVariableA ("NLS_LANG", "AMERICAN_AMERICA.US7ASCII")缺点:不太稳定

方法三版本:PB9说明:通过JDBC连接数据库时默认是采用ZHS16GBK的字符集。复制C:\Program Files\Sybase\Shared\PowerBuilder\jdk14目录到程序的运行目录下。复制pbjdc90.dll到程序运行目录下(pb调用JDBC的DLL,通常在PB安装目录下在的SHARE目录下)复制ojdbc14.jar到程序运行目录下(ORACLE的JDBC驱动,通常在ORACLE安装目录的JDBC目录下)增加客户机的系统环境变量classpath=c:\xxxxx\pbjdc90.dll;c:\xxxx\ojdbc14.jar//通过JDBC连接数据库SQLCA.DBMS = "JDBC"SQLCA.LogPass = SQLCA.LogId = "zyclinic"SQLCA.AutoCommit = FalseSQLCA.DBParm = "Driver='oracle.jdbc.driver.OracleDriver',URL='jdbc:oracle:thin:@192.168.17.86:1521:oracle'"CONNECT USING SQLCA;

方法四版本:PB11说明:连接时,通过设置DBParm参数中的字符集参数进行连接。//连接US7ASCIISQLCA.DBMS = "O10 Oracle10g (10.1.0)"SQLCA.ServerName = "database"SQLCA.LogId = "zyclinic"SQLCA.LogPass = “123456”SQLCA.AutoCommit = False//使用本地的NLS_LANG中的字符集进行连接。如本地的NLS_LANG= AMERICAN_AMERICA.US7ASCII,则使用该字符集连接。SQLCA.DBParm = "NLS_Charset='Local'"Connect using SQLCA;//连接ZHS16GBK,如本地的NLS_LANG= AMERICAN_AMERICA.US7ASCII,该连接方式仍然采用ZHS16GBK进行数据库连接。SQLCA.DBMS = "O10 Oracle10g (10.1.0)"SQLCA.ServerName = "database"SQLCA.LogId = "zyclinic"SQLCA.LogPass =

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值