LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1809|回复: 1

oracle hs 通过 unixodbc 查询 utf8 的 mysql 表,返回的中文数据为问号

[复制链接]
发表于 2008-3-12 17:20:36 | 显示全部楼层 |阅读模式
debian4,安装了 mysql-server, unixodbc, libmyodbc,以及 oracle 10204。
现在想配置 oracle hs,通过 odbc 连接 mysql。mysql 表的字符集为 utf8, oracle 的字符集为 ZHS16GBK。

现在 hs 已经连通,但是在 sqlplus 以及 unixodbc 的 isql 中,查询出的中文均为问号。

请各位帮助解决,多谢!
 楼主| 发表于 2008-3-14 16:23:02 | 显示全部楼层
unixodbc版本:

vzw1840:~# apt-cache showpkg unixodbc
Package: unixodbc
Versions:
2.2.11-13(/var/lib/apt/lists/ftp.debian.org_debian_dists_etch_main_binary-i386_Packages)(/var/lib/dpkg/status)


debian 的 locale:
vzw1840:~# locale -a
C
en_US.utf8
POSIX
zh_CN.utf8


用isql连接后,我在unixodbc的trace文件中发现了这样一段:

[ODBC][865][SQLConnect.c][3549]
                Entry:            
                        Connection = 0x804fa60            
                        Server Name = [DSN_MYSQL_VZW1840][length = 17 (SQL_NTS)]            
                        User Name = [zw1840][length = 6 (SQL_NTS)]            
                        Authentication = [NULL]
                UNICODE Using encoding ASCII 'ISO8859-1' and UNICODE 'UCS-2LE'

而我的mysql是utf-8,是否应该设置unixodbc的字符集?如何设置?

btw,我的目标是在oracle中通过hs访问mysql的数据,请问除了unixodbc外还有其他替代方案么?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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