2010-04-12 68 views
2

我面臨一個特殊的問題,我需要更新數據庫中的特定值來說'Hellò'。當我運行正常的更新語句的值更新正常。但是當我把它放在一個.sql腳本文件中,然後運行update語句時,最後一個字符被垃圾值替換。有人能告訴我這個以及oracle如何處理腳本文件嗎?Oracle字符編碼

+0

Oracle對.sql文件的期望是什麼字符編碼?你的文本編輯器使用什麼字符編碼?這就是你需要檢查的全部內容。 – 2010-04-12 06:08:56

+0

是的,我遇到了一個問題,在文本文件中的字符顯示正常,但腳本運行時數據庫插入垃圾值。 – 2010-05-13 10:59:55

回答

0

如果更新語句有效,那麼這不是數據庫中字符編碼的問題,所以有兩個主要的元兇需要注意;你的軟件和你的文件編碼。

檢查您的編輯器是否符合UTF8 - 例如記事本不是,但是寫字板是,所以更好的編輯器如UltraEdit。您還需要檢查文件是否保存爲UTF8,因爲這並不總是默認設置,例如,如果使用記事本編輯和保存文件,則不會再使用UTF8。

一旦你有一個UTF8文件,那麼你必須通過支持UTF8的軟件將它加載到數據庫中,UTF8在Windows 10g中排除了SQLPlus。 SQL Developer是可以的。如果您想使用SQLPLus將客戶端升級到11g。你不會說你如何加載它,所以檢查你使用的是什麼,支持UTF8。