sqlServer数据库中,使用where语句进行字段过滤查询时,由于值为生僻字,数据库不识别,查询不出数据,而数据库中是有这条记录的。
例:
SELECT * FROM table WHERE name = '㡑';
使用此语句查询时,结果为空。然而数据库中是有这条记录的。
SELECT * FROM table WHERE name = N'㡑'
当然前提你是NVARCHAR
数据库不是根据你所谓的“字”来识别的,是这个“字”对应的 编码 值 来判断的。所以根本不会存在你说的问题,那么需要检查的是其他各个地方 —— 数据存储用的什么编码,查询窗口用的什么编码
你的字段类型是什么?你看到那个值是“㡑”,但是,前后没有数据库自已给加上的填充?你用like试一下。