2016-02-02 69 views
0

我試圖用PHP將數據插入到Microsoft SQL Server 2014. 我從來沒有使用過這個。 我已經將PHP文件與MYSQL數據庫結合在一起,並且一切正常。 MYSQL數據庫設置爲UTF-8,所以我沒有任何問題與德語umlaute。將PHP插入Microsoft SQL Server 2014德語不明確問題

在SQL Server上,我得到了非常奇怪的字符,而不是德語的umlaute。

例如: 奧地利是在德國「Östereich」我的數據庫中的值看起來像「Ã-sterreich」。

我沒有找到我的問題的解決方案。我試圖改變排序爲SQL_Latin1_General_CP1_CS_AS

+0

您是如何更改排序規則並驗證其對涉及的單個表格的影響,然後嘗試新插入?看一看涉及的具體表格之一的排序規則 –

+0

你能提供你如何試圖做到這一點的代碼示例嗎? – JimiDini

回答

0

我很確定你的php文件編碼爲UTF-8。您可以嘗試將php文件的編碼更改爲latin1

由於UTF-8允許不常見的字符長度超過8位(允許8,16,24或32位),所以可能發生的情況是,從UTF-8到嚴格的8位編碼爲latin1的轉換失敗」。不太常見的字符佔用多個8位空間,例如äöü。那就是你看到Ö而不是Ö的原因。

當然,如果您的數據庫接受UTF-8,那麼更好的解決方案是。

+0

我在PHP中使用sqlsrv來連接我的數據庫。我找到了一個解決方案,我可以通過連接「CharacterSet」=>「UTF-8」提供一個Charset參數,並且這個工作正常! LINK:http://www.johnro.net/2012/07/25/php-sqlsrv-problems-with-utf-8-values-set-your-characterset-option/ – Arman21

+0

不錯!那麼最好是,如果你想爲你的問題創建一個新的答案,並將其標記爲已接受 –