我已經使用UTF8編碼將一些數據上傳到MySQL(5.5.15 for osx10.6)數據庫,但由於某些原因,我必須在latin1時指定它的編碼加載了它。告訴MySQL連接使用UTF-8和Django
我認爲這部分是好的,因爲當我寫入OUTFILE時,我的unicode'nu'字符在終端和Vim中出現。但是,當我在MySQL會話中查看它們時,以及當我嘗試從Django admin編輯字段時,會出現重疊字符(latin1?)。
因此,我的問題是:如何告訴MySQL客戶端和(特別是)Django以UTF-8的方式讀取我的數據庫?
在命令行中,我試圖
--default_character_set=utf8
也
'SET NAMES UTF8;'
在MySQL提示符,但他們沒有工作。
當我看着VARIABLES LIKE'char%'時,它們都被設置爲utf8,與character_set_server是latin1。如果我將它設置爲utf8 ....那也行不通。
如果有人能夠給我一些指示,特別是關於如何配置Django與我的數據庫正確對話,我將不勝感激。
謝謝!
你的意思是你有,當你裝好了指定LATIN1?通常情況下,您應該在創建數據庫時指定UTF-8:「CREATE DATABASE dbname CHARACTER SET utf8 COLLATE utf8_general_ci;」 –
數據庫本身是UTF-8,整理utf_unicode_ci,但如果我LOAD DATA LOCAL INFILE''INTO TABLE CHARACTER SET utf8我收到問號,並根據互聯網上其他各種職位,它似乎只上傳與如果我指定(不正確)'CHARACTER SET latin1',則爲正確的編碼。很混亂。 –
xnx