2011-10-27 31 views
3

如果我將數據庫,表格和相關列的編碼從latin1_swedish_ci(默認)更改爲utf8_general_ci以顯示歐洲字符和其他字符,是否適用於任何現有數據,還是僅適用於新插入?使用現有數據更改數據庫編碼

我目前的名字顯示爲Rubén,即使將該列的編碼更改爲utf8_general_ci,它們也不會自行修復。

是否必須將我的數據重新導入到數據庫中,還是可以將編碼更改應用於現有數據的「就地」?

+0

數據庫應該怎麼知道這些字符在人眼實際上畸形?所有它知道的是,它被告知要存儲這些字符。所以,是的,你基本上需要自己轉換它們。 – BalusC

+0

這可能有所幫助:http://www.mysqlperformanceblog.com/2007/12/18/fixing-column-encoding-mess-in-mysql/ – Andre

+0

好的。我認爲內部存儲的數據可能沒問題,但解碼不正確。 – Bojangles

回答