2016-02-02 31 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

不错!那么最好是,如果你想为你的问题创建一个新的答案,并将其标记为已接受 –