如果我尝试创建带有特殊(北欧)字符的选择,例如:
Select * from users where name like '%æ%'
它只是选择所有用户,而不是包含字母“æ”的用户。
我是否需要在数据库中安装一些特殊的驱动程序,或者我是否还遗漏了其他内容?
更新:
我使用的是 SQL Server 2008 数据库,排序规则设置为“SQL_Latin1_General_CP1_CI_AS”,数据字段是可为空的 nVarChar 数据类型。
最佳答案
很可能是某些排序规则或数据类型问题
示例,给出 97 和 230
SELECT ASCII('æ' COLLATE Albanian_CI_AI), ASCII('æ' COLLATE Latin1_General_CI_AS)
我们基本上需要更多信息。
编辑:Question about Danish/Norwegian å (虽然尚未解决)
编辑 2:如果 name 是 nvarchar,则将代码更改为此,以便文字也变为 unicode。
Select * from users where name like N'%æ%'
关于带有特殊字符的 SQL LIKE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3274853/