2015-10-17 33 views
0

我使用MariaDB Connect Engine以UTF-8形式顯示內容的Web服務器上的WE8MSWIN1252編碼連接到Oracle數據庫。在MariaDB引擎連接中從WE8MSWIN1252轉換爲UTF-8

用於連接表的代碼是這樣的:

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

我知道我必須從某個地方傳期望的charset,但不知道如何使用這個引擎的語法。

我能夠正確顯示使用此代碼直接從PHP連接字符:

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

odbc.ini文件看起來是這樣的:

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

我試圖把Charset = UTF-8在這個文件但它不起作用。

回答

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,所以我假設在其他環境中,這是行不通的。

+0

在MariaDB中,你在做'SET NAMES utf8'(或同等學歷)嗎?這些列是否聲明爲「CHARACTER SET utf8」?什麼不「工作」? –