sql server全文索引 contains 中文检索部分失败

项目中使用了sql server2012的全文索引,在利用CONTAINS(“需要比较的内容”, “查找的内容”)时,如果查找的内容是中文,会出现部分中文存在,但就是无法查到的问题

// 例如: 数据库中添加全文索引的字段为 content,字段下的内容有以下数据
 第一条: "12岁,你好,123456,15587656129";
 第二条: "14岁,你,241244,15587656187";
 第三条: "32岁,好,233456,15587651245";
 第四条: "22岁,你好啊,233656,15587661245"
// sql 里面这样写应该是可以查出 内容里面带 '你好' 的数据,也就是第一条和第四条,但查询返回的结果却是空的
contains(content,'"你好*"')

// 但sql里面要是这样写,却是可以查询出第一条、第三条和第四条的数据,说明代码本身是没有问题的
contains(content,'"好*"')

解决办法

经测试发现可能是sqlserver创建全文索引的 断字符语言选的有问题,更改断字符语言后成功解决此问题。

1、首先选中创建全文索引的表,然后 右键—》全文索引–》属性–》列
在这里插入图片描述
2、断字符语言选中 Chinese (Macau SAR),默认为 Simplified Chinese

在这里插入图片描述
3、点击确定,然后再次查询就能查到结果了

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值