六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 188|回复: 0

Oracle 输出乱码

[复制链接]

升级  43.33%

27

主题

27

主题

27

主题

秀才

Rank: 2

积分
115
 楼主| 发表于 2013-1-16 18:05:10 | 显示全部楼层 |阅读模式
先介绍一下shell所在的环境:
操作系统 Linux Suse 9 数据库 Oracle 9i
Suse的环境变量:
NLS_LANG=SIMPLIFIED CHINESE_CHINA.UTF8 (控制Oracle客户端应用程序使用的字符集)
LANG=zh_CN.gbk(操作系统的语言字符集)
Oracle服务器的字符集:UTF8(Oracle服务器端的字符集)

shell的执行方式:先用ftp工具将脚本以asc方式上传至Suse上,然后利用telnet工具登录Suse来运行shell。下面一段为原始shell,即执行结果出现乱码问题的代码。功能是通过调用存储过程,获得返回出参,并将出参值写到目标文件DelProductInfoResult.txt中:
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; font-size: 13px; width: 98%; background-color: #eeeeee;">send_day=`sqlplus -s $db_conn_cmd <<EOF
set serveroutput on
set pagesize 0
set linesize 32767
set feedback off
DECLARE
ret1 
varchar2(1000);
BEGIN
 zxdbm_ismp.product_delete(
'${v_productid}',ret1);
 DBMS_OUTPUT.PUT_LINE(ret1);
END;
/
exit;
EOF`
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表