为什么我的nvarchar(255)型查不到数据?

canbo 2003-08-25 11:12:08
我在一次使用数据库中发现一个问题,数据库字段类型为nvarchar(255),是做的模糊查询,比如数据中有一条记录是“这是中文字串”,我可以查出所有"这是"关键字的数据,但是查不出“中文”的记录,一条记录也没有,这是为什么?很奇怪。
...全文
98 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
hjb111 2003-08-25
  • 打赏
  • 举报
回复
应当这样:
select * from yourtable where colname like '%'+@var+'%'
N是为Unicode标准!
hjb111 2003-08-25
  • 打赏
  • 举报
回复
应当这样:
select * from yourtable where colname like '%'+@var+'%'
N是为Unicode标准!
hjb111 2003-08-25
  • 打赏
  • 举报
回复
Like N'%中文%' 是查询所有为‘中文’的字符串!前加N表示为国标码!
canbo 2003-08-25
  • 打赏
  • 举报
回复
Like N'%中文%' 是什么意思?

回答了就给分
CrazyFor 2003-08-25
  • 打赏
  • 举报
回复
TRY:
select * from 表 where 列 like N'%中文%'
hjb111 2003-08-25
  • 打赏
  • 举报
回复
select * from yourtable where colname like '%'+@var+'%'
hjb111 2003-08-25
  • 打赏
  • 举报
回复
Select * from yourtable where colname like N'%这是%'
canbo 2003-08-25
  • 打赏
  • 举报
回复
我就是写成的 like '%var%',var是可变的噻,传什么就查找什么 ,
我问朋友,他说原来也遇到过这种情况,他忘了后来是怎么解决的的。

to pengdali(大力 V2.0) :
like N'%中文%'是什么意思?
liuyun2003 2003-08-25
  • 打赏
  • 举报
回复
呵呵,估计你的语句是这么写的select * from yourtable where yourcol like '这是%'
你改成这样select * from yourtable where yourcol like '%这是%'
就可以了。
zarge 2003-08-25
  • 打赏
  • 举报
回复
把你用的查询语句写出来给大家看看
pengdali 2003-08-25
  • 打赏
  • 举报
回复
select * from 表 where 列 like N'%中文%'

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧