MS SQL 查询条件中有中文时,无法抓到数据

大家好:

            一段时间开发,发现想做个程序猿一定要做到勤奋。不止要勤奋学习,还有勤于整理开发中遇到的问题。

              问题:MS sql 到过滤条件中有汉字时,检索不到数据。明明存在符合条件的情况却检索不到数据。

例子:

问题:

一个tabel的两个栏位,分别是RO,和NS,下面是table里的值
RO    NS
----------------
BQA	(Blank)
BQA	BQA
BQA	BQbr
BQA	BQCA
BQA	BQL
BQA	BQLA
BQA	BQmx
BQA	BQUS
BQC	上海
BQC	东北
BQC	北京
BQC	华中
--------------------------------------------------------------------
下面是select 语句,
SELECT DISTINCT ro,ns
 FROM ROLEREGION 
where  NS='上海'
检索不到数据。

解决:
SELECT DISTINCT ro,ns
 FROM ROLEREGION 
where  NS=N'上海'

原因:
可能你原本的数据库不是类似PRC的collation而是其他的如(latin1)等不支持中文的的,表字段采用了unicode编码如nvarchar2类型,你只要在查询条件前面加上N就可以了.


                                                       希望对你能有帮助,我只是只菜鸟。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值