2017-05-27 41 views
0

我在存儲在數據庫中的varchar元素存在問題。 爲了在它們被存儲在一個陌生的崩潰,我無法理解正確的方式進行打印,看下面的例子: Data Stored incorrectly存儲在數據庫的錯誤字符集中的字符串

你可以注意到€™的字符串。它應該是一個「è」。同樣的事情發生在'和'à'上。如何更改數據庫的字符集以正確顯示varchar元素? 目前的設置是:

存儲引擎:MyISAM的

整理:latin1_swedish_ci

非常感謝你。我真的需要幫助。我嘗試了很多排序規則,但似乎沒有任何工作。

+0

你如何插入你的記錄?你在使用框架嗎?這是純粹的PDO嗎?你能提供更多信息嗎?如果您可以提供代碼,那也可以提供幫助。 –

+0

他們已經存儲在一個奇怪的整理* –

+0

嗨Ravi。記錄已從其他用戶直接插入到數據庫中。他們沒有使用框架,只是簡單的PHP和HTML。 –

回答

0

據我所知,整理是用於排序和比較,而不是記錄。

您可能正在尋找編碼,因爲它負責字符本身。

我相信你的問題是你有錯誤的編碼。在將其設置爲UTF8之前,請將排序規則更改爲utf8_unicode_ci。

請嘗試運行此:

SET NAMES utf8; 

這應該解決您的問題,爲新記錄。舊的將保持不變。

+0

@Alexandru我的答案幫助你解決你的問題?如果是這樣,請不要猶豫,將此標記爲您的最佳答案。 –

相關問題