为了账号安全,请及时绑定邮箱和手机立即绑定

求救 sqlite 查询汉字问题 -----折腾好久了 依然无法解决

求救 sqlite 查询汉字问题 -----折腾好久了 依然无法解决

冉冉说 2018-12-11 14:09:24
小弟最近做一个小demo 底层使用entity framework + sqlite数据库中有两条数据:---ID--- ---姓名---1 程杰2 平板电脑问题来了在代码里对姓名(Nvarchar类型)进行模糊查询的时候(Contains),关键代码如下:DataContext source = new DataContext();var res = source.User.where(p=>p.姓名.Contains(name));当name = "程"的时候查出的数据里尽然包含"平板电脑",这个问题困扰了好几天了,希望各位给我一点思路
查看完整描述

2 回答

?
猛跑小猪

TA贡献1858条经验 获得超8个赞

我是做C++开发的,不太懂你的代码,我只能猜测一下,可能是由于汉字编码引起的,我在C/C++中使用sqlite时,由于sqlite内部的文本是以UTF8编码的,所以查询时如果SQL里有汉字,需要把SQL转成UTF8编码再查询。

查看完整回答
反对 回复 2018-12-15
?
白衣染霜花

TA贡献1796条经验 获得超10个赞

感觉你这个是把所有记录都查出来了而不是你说的多了一条数据,检查一下程序吧:

var res = source.where(p=>p.姓名.Contains(name));

这样写应该是有问题的,DataContext里是不是有个集合啊,应该对这个集合用where语句吧


查看完整回答
反对 回复 2018-12-15
  • 2 回答
  • 0 关注
  • 353 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信