2012-03-07 154 views
0

我有一個PostgreSQL數據庫與SQL_ASCII enconding。當我從任何表中選擇數據時,不顯示特殊字符,也不知道原因。我嘗試更改顯示數據的頁面中的引用。對此有何幫助?SQL_ASCII數據庫不顯示特殊字符

+0

嘗試[函數utf8_encode](http://php.net/manual/fr/function.utf8-encode.php)[utf8_decode](http://php.net/manual/fr/function.utf8-decode。 php) – mgraph 2012-03-07 15:43:05

+0

可能的重複 http://stackoverflow.com/questions/633762/special-characters-in-php-mysql 和 http://stackoverflow.com/questions/2175406/input-text-and-special -characters-and-mysql – Milap 2012-03-07 15:43:32

回答

2

"SQL_ASCII"編碼實際上意味着沒有強加在數據編碼。

當您(或您的應用程序)要記住什麼是你傳遞到數據庫中的數據的編碼及後,當你找回它,你應該應用知識與正確的編碼,以顯示數據的結果。

例如:您的應用程序存儲西里爾(假設ISO-8859-5)的「編碼」數據庫SQL_ASCII文本。稍後,當您檢索數據時,您將設置您的應用程序生成的網頁編碼爲西方ISO-8859-15。然後,您網頁上的文字看起來會被破壞。

1

所以,呃,是啊。當你告訴你的數據庫存儲ASCII碼時,爲什麼你爲了存儲ASCII碼而煩惱?如果你想要unicode,請使用unicode編碼。或者將特殊字符轉碼爲ascii,使用xml命名實體等。

+0

你是對的我想要Unicode但數據庫不是我的意思我不是我的數據庫背後的人,所以我不能改變那裏的任何東西,也不是我的建造者我正在尋找解決方案。你能告訴我什麼是「XML命名實體」嗎? – ReynierPM 2012-03-07 15:52:56