asp.net sql语句中where条件存在中文在程序中取不出数据

sql 语句如下:

string sql = string.Format(@"SELECT FHANDLEDATE,FNAME_L2,CFHANDLEDONE,FHANDLEPERSON FROM CT_QUE_PROBLEMVIEW INNER JOIN CT_QUE_PROBLEMVIEWENTRY ON CT_QUE_PROBLEMVIEW.FID = CT_QUE_PROBLEMVIEWENTRY.FPARENTID INNER JOIN CT_QUE_PROBLEMVIEWENTRYS2 ON CT_QUE_PROBLEMVIEW.FID=CT_QUE_PROBLEMVIEWENTRYS2.FPARENTID
INNER JOIN T_ORG_SALE ON CT_QUE_PROBLEMVIEW.FDEPARTMENTID = T_ORG_SALE.FID WHERE CFHANDLEDONE IN (N'完成',N'受理',N'勘察') AND CT_QUE_PROBLEMVIEW.FNUMBER='{0}' ORDER BY FHANDLEDATE ", number);

下面的这句where条件存在中文,所以在asp.net中取不出数据,我把CFHANDLEDONE IN (N'完成',N'受理',N'勘察')去掉可以取出数据,但不符合客户要求,数据库为oracle,并且方法oracle查询窗口可以正常取数据,所以语句不存在问题。

----------------------------------------------------------------------------------------------
WHERE CFHANDLEDONE IN (N'完成',N'受理',N'勘察') AND CT_QUE_PROBLEMVIEW.FNUMBER='{0}' ORDER BY FHANDLEDATE ", number);


偶然的你
浏览 477回答 2
2回答

函数式编程

因为存储字符串的时候常常会产生空格。所以楼主的问题可能是空格的问题,可以改用like试试。(nvarchar可变长度应该不会产生空格???)
打开App,查看更多内容
随时随地看视频慕课网APP