Sql server 西里尔搜索
我修改了我为俄罗斯市场开发的一个应用程序。一切似乎都很好,在将数据输入数据库时出现了一个问题,但通过将页面编码设置为utf-8解决了这个问题。因此,插入和检索工作正常。我遇到了一个我根本不知道如何解决的问题。 当我在mssql查询分析器中运行以下查询(简化)时(因此不可能在代码中出错),即使有许多记录匹配,我也没有得到任何结果: (mysql版本为2005) 即使我将其修改为:Sql server 西里尔搜索,sql-server,tsql,sql-server-2005,Sql Server,Tsql,Sql Server 2005,我修改了我为俄罗斯市场开发的一个应用程序。一切似乎都很好,在将数据输入数据库时出现了一个问题,但通过将页面编码设置为utf-8解决了这个问题。因此,插入和检索工作正常。我遇到了一个我根本不知道如何解决的问题。 当我在mssql查询分析器中运行以下查询(简化)时(因此不可能在代码中出错),即使有许多记录匹配,我也没有得到任何结果: (mysql版本为2005) 即使我将其修改为: SELECT * FROM institutions WHERE city='Москва' ORDER BY add
SELECT *
FROM institutions
WHERE city='Москва'
ORDER BY address1
或者其他一些变化,它就是不起作用。问题是为什么
顺便说一句,如果在我提交这封信后你看不到西里尔字母,它会搜索莫斯科作为一个城市
有人有解决办法或想法做什么吗?好的,刚刚找到答案,有点蹩脚:)。您需要在unicode字符串前面添加N
SELECT * FROM institutions WHERE city LIKE N'%Москва%' ORDER BY address1
我会留下这个,以防其他人被它卡住。N告诉SQL Server它是unicode而不是ascii
SELECT * FROM institutions WHERE city LIKE N'%Москва%' ORDER BY address1