当将丹麦字符插入到具有nvarchar数据类型的字段中时,丹麦字符会变形。例如:brændstof被转换为brÃndstof。在直接从SQL Server查询窗口时,它正常工作。我尝试为该字段提供不同的排序规则(Latin1_Genaral、Danish_Greenlandic_100_CI_AI、Danish_Norwegian_CI_AI等)。是否有一种方法可以实现这一点。我正在使用Microsoft Drivers 3.0 for PHP for SQL Server。请帮忙。
当将丹麦字符插入到具有nvarchar数据类型的字段中时,丹麦字符会变形。例如:brændstof被转换为brÃndstof。在直接从SQL Server查询窗口时,它正常工作。我尝试为该字段提供不同的排序规则(Latin1_Genaral、Danish_Greenlandic_100_CI_AI、Danish_Norwegian_CI_AI等)。是否有一种方法可以实现这一点。我正在使用Microsoft Drivers 3.0 for PHP for SQL Server。请帮忙。
使用CHAR等效替代'æ'字面值,看看会发生什么。
我使用了一种解决方法,只是在插入表格之前对丹麦字符串进行了HTML编码,显示时再解码回来。
我不知道丹麦文字的情况,但我在SQL SERVER中遇到了亚美尼亚字母的问题。我解决了这个问题,方法如下。
insert into sometable(field) values( N'myArmenianText' );
仅仅是猜测:
我认为问题出在PHP部分,而不是MySQL部分(我看到你针对丹麦语使用了一些编码)。甚至更早之前。你有没有尝试在HTML页面上输入“ä”(真正的字符,而不是ä
)?它会被转换成像你问题中的示例一样的其他字符。所以我在这里看到两种可能性:
或者可能是第3和第4种情况(不太可能):