isql插入中文亂碼
平臺:redhat 6.x
數據庫:linux oracle-11g R2
連接器:ODBC2.3.4
現象:
上述軟件均安裝完成;
sqlplus插入中文能夠正常顯示
isql插入中文亂碼
數據庫字符集:
select * from nls_database_parameters;
系統字符集:
ODBC字符集:
配置無誤!
odbc編譯選項:
./configure –prefix=/usr/local/unixODBC-2.3.4 –includedir=/usr/include –libdir=/usr/lib64 -bindir=/usr/local –sysconfdir=/etc –enable-iconv=yes –with-iconv-char-enc=GB18030
網上看了很多資料,按理配置都可以的,實際上isql插入均亂碼
最後分析odbc源碼,在源碼中打印跟蹤信息,重新編譯
重新執行isql,發現自己編寫的跟蹤信息未打印出來
執行whereis isql
發現isql存在兩個路徑,突然想起以前曾經安裝過老版本的ODBC,未卸載乾淨,果斷統統卸載乾淨,重新安裝odbc:
配置如下:
./configure –prefix=/usr/local/unixODBC-2.3.4 –includedir=/usr/include –libdir=/usr/lib64 -bindir=/usr/local/bin –sysconfdir=/usr/local/etc –enable-iconv=yes –with-iconv-char-enc=GB18030
重新執行isql,成功