Oracle使用sqlldr load匯入txt出現中文亂碼
Oracle使用load操作出現中文亂碼問題
Oracle經常會出現中文亂碼問題,首先確定Oracle伺服器端的字符集看這個字符集是否與你客戶端的字符集相同。查詢Oracle伺服器端字符集的命令是select
* from nls_database_parameters,客戶端字符集select * from nls_instance_parameters,要保證這兩個字符集市相同的。如果不相同可以在網上找到教程我在這裡不再贅述。下面介紹另一種情況txt文字字符集為utf-8導致的匯入中文亂碼問題。
導致中文亂碼原因在於txt的字符集不是gbk,首次嘗試是在load中的.ctl檔案中新增在load data後面新增CHARACTERSET ZHS16GBK將輸入轉成gbk,但是由於txt本身的問題導致這個方法失效,所以我嘗試直接將utf-8的格式轉變成其他格式,發現轉變成ANSI成功匯入切沒有亂碼。下面提供一個利用notepad++將utf-8的txt轉換成ANSI批量轉換的方法。
1.此方法需要安裝notepad++英文版(中文版我使用失敗你也可以試試其他方法)
2.此方法需要在notepad上安裝python script外掛選擇plugins-》選擇plugins manager-》選擇show plugins manager在其中找到python script安裝
3.使用plugins-》python script-》new script編寫如下程式碼:
import os;
import sys;
filePathSrc="F:\\TELECOM\\" # 需要批量轉換的資料夾
for root, dirs, files in os.walk(filePathSrc):
for fn in files:
if fn[-4:] == '.txt': # 要轉換的型別
notepad.open(root + "\\" + fn)
notepad.runMenuCommand("Encoding", "Convert to ANSI") #轉換成ANSI
notepad.save()
notepad.close()
import sys;
filePathSrc="F:\\TELECOM\\" # 需要批量轉換的資料夾
for root, dirs, files in os.walk(filePathSrc):
for fn in files:
if fn[-4:] == '.txt': # 要轉換的型別
notepad.open(root + "\\" + fn)
notepad.runMenuCommand("Encoding", "Convert to ANSI") #轉換成ANSI
notepad.save()
notepad.close()
編寫完成後儲存為utf2ansi.py
4.使用plugins-》python script-》script選擇你儲存的utf2ansi執行即可
相關文章
- sqlldr 匯入中文出現亂碼解決方法SQL
- sqlldr匯入資料中文亂碼SQL
- oracle資料庫使用sqlldr命令匯入txt資料Oracle資料庫SQL
- 【程式設計技巧】匯入專案出現中文亂碼程式設計
- oracle sqlldr匯入OracleSQL
- 【匯入匯出】sqlldr 匯入案例SQL
- 用Oracle sqlldr匯入文字檔案TXT 總結OracleSQL
- 使用sqlldr匯入文字資料到oracleSQLOracle
- 匯入sql檔案出現亂碼SQL
- [20140426]使用sqlldr匯入.txtSQL
- mysql匯入匯出資料中文亂碼解決方法小結MySql
- jQuery load()函式載入頁面出現亂碼jQuery函式
- 使用oracle sqlldr匯入文字資料的例子OracleSQL
- sqlldr批量匯入匯出資料測試SQL
- sqlldr批次匯入匯出資料測試SQL
- Oracle 的資料匯入匯出及 Sql Loader (sqlldr) 的用法OracleSQL
- MySQL資料匯入匯出亂碼問題MySql
- mysql 匯入中文亂碼解決一例MySql
- oracle 中文亂碼Oracle
- Oracle Sql Loader中文字元匯入亂碼的解決方案OracleSQL字元
- 關於 Oracle 的資料匯入匯出及 Sql Loader (sqlldr) 的用法OracleSQL
- 【匯入匯出】sqlldr 匯入含有內嵌換行符的資料SQL
- 偽元素 content 出現中文亂碼
- SQLSERVER匯出TXT文字檔案,ORACLE SQL LOADER匯入TXT文字檔案SQLServerOracle
- 資料匯入SQLLDRSQL
- Oracle 匯出txt檔案Oracle
- 解決PHP匯出CSV檔案中文亂碼問題PHP
- 在MAC平臺下使用Eclipse出現了中文亂碼MacEclipse
- MySQL資料匯入匯出之Load data fileMySql
- oracle 輸出中文亂碼問題解決方案Oracle
- Oracle使用資料泵匯出匯入表Oracle
- Oracle exp/imp匯出匯入工具的使用Oracle
- oracle中文顯示亂碼Oracle
- c#匯出檔案,檔名中文亂碼解決方法C#
- 【SQL*Loader】sqlldr匯入SQL
- sqlldr匯入日期函式SQL函式
- 透過sqlldr匯入到sys使用者SQL
- 通過sqlldr匯入到sys使用者SQL