![](/img/trans.png)
[英]Convert Oracle 12c database from WE8MSWIN1252 to utf-8 character set
[英]Convert from WE8MSWIN1252 to UTF-8 in MariaDB Engine Connect
我正在從WEB服務器使用WE8MSWIN1252編碼連接到Oracle數據庫,該Web服務器使用MariaDB Connect Engine以UTF-8顯示內容。
用於連接表的代碼如下:
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
放在此文件中,但是沒有用。
經過多次嘗試和大量調查,我了解到這是環境設置的問題。
我終於解決了這一問題,在/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,所以我想在其他環境中這是行不通的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.