我在ASP.NET和SQL Server中遇到了土耳其字符问题.我在asp.net中有搜索框,并尝试在数据库中进行搜索.但是,我在土耳其语中遇到问题.当我搜索包含非法"İ"字符的"GALVANİZ"时.我确信,"GALVANİZ"这个词在数据库中.
当我在SQL Server工具中执行一个简单的select语句时,它也不会返回任何内容.
这是SQL
select * from Product where name like '%GALVAN?Z%'
Run Code Online (Sandbox Code Playgroud)
这不会返回任何东西.我怎样才能修好它?
谢谢
您可以在查询中指定排序规则,例如Turkish_CI_AI,或者在字符串中使用"N"字符表示它们是Unicode,如下所示:
select * from Product where name like N'%GALVAN?Z%'
Run Code Online (Sandbox Code Playgroud)
我自己也解决了这个问题。这是解决方案
select * from product where name like N'%GALVANi%' collate Turkish_CI_AS
Run Code Online (Sandbox Code Playgroud)
这是一个更好的解决方案