在MariaDB Engine Connect中从WE8MSWIN1252转换为UTF-8

时间:2015-10-17 02:54:45

标签: oracle character-encoding odbc mariadb

我从使用MariaDB Connect Engine以UTF-8显示内容的网络服务器连接到带有WE8MSWIN1252编码的Oracle数据库。

用于连接表的代码如下:

CREATE TABLE mytable ENGINE=CONNECT TABLE_TYPE=ODBC TABNAME='oracle_table_name' CONNECTION='DSN=orcl;UID=someuser;PWD=passwd';

我知道我必须传递预期的字符集,但不确定使用此引擎的语法。

我可以使用以下代码正确显示直接从php连接的字符:

oci_connect('someuser', 'passwd', 'host', 'AL32UTF8');

odbc.ini文件如下所示:

[orcl]
Driver = Oracle 12c ODBC driver
Servername = host

我已尝试将Charset = UTF-8放入此文件中,但它无法正常工作。

1 个答案:

答案 0 :(得分:0)

经过多次尝试和大量调查,我明白这是环境设置的问题。

我终于解决了写下/etc/init.d/mysql中的下一行:

NLS_LANG=SPANISH_COLOMBIA.WE8MSWIN1252 ; export NLS_LANG

要从isql进行连接,/root/.bash_profile中需要下一行:

NLS_LANG=SPANISH_COLOMBIA.AL32UTF8 ; export NLS_LANG

我在CentOS 6上,所以我认为在其他环境中这不起作用。