日期:2014-05-18  浏览次数:20625 次

SQL语句无法查询到中文字段
SELECT * FROM [WellTest].[dbo].[DeviceLatest] where (Name='锅炉' and 1=1),无法查询到结果

表名 DeviceLatest
字段名 说明 类型 可空 备注
ID 数据编号 uniqueidentifier 0
DeviceID 设备编号 Int 1
Name 设备名称 Nvarchar(Max) 1
MeiValue 耗煤量 Float 1
ACValue 耗电量 Float 1
OilValue 耗油量 Float 1
GasValue 耗气量 Float 1
WaterValue 耗水量 Float 1
ReportDate 创建时间 Data Time 1
PropertyBag 属性包 Nvarchar(Max) 1 将其他属性直接序列化成string存储

Name的collection 为Chinese_PRC_CI_AI

------解决方案--------------------
SELECT * FROM [WellTest].[dbo].[DeviceLatest] where (Name=N'锅炉' and 1=1)
试试
------解决方案--------------------
因为你的字段:Name 设备名称 Nvarchar

所以针对nvarchar这样的数据,在进行操作时,在数据前面加上N.你可以看看帮助的具体说明.