梦清川
2017-12-02 13:33
采纳率: 80%
浏览 4.3k

C#数据库查询结果如何判断是否为null

            SqlCommand cmd3 = new SqlCommand("select " + cl + " from zhuanye where UserNum='" + num + "'", conn);
            SqlDataReader sd3 = cmd3.ExecuteReader();
            if (sd3.HasRows)

                            cl表示数据库表里面的一个字段,num是自己赋得值,通过数据库查询cl对应的字段为空,但是运行结果还是提示if(sd3.HasRows)为真,怎么修改才能正确运行?
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 「已注销」 2017-12-03 02:34
    已采纳

    如果你只需要判断cl字段存不存在数据,那么可以查count(cl)然后条件里加上and cl is not null
    这样在if语句里就判断是否大于等于1

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 你查询字段应该这样:SqlCommand cmd3 = new SqlCommand("select cl from zhuanye where UserNum='" + num + "'", conn);
    你写的cl好像是个变量一样。你查询的时候返回什么?datatable还是dataset? 至于如果判断查询结果是否为空,你的返回类型应该是int,大于0表示存在数据,小于0就是没有查询到。if (sd3.HasRows)这个是判断bool类型的。

    评论
    解决 无用
    打赏 举报
  • threenewbee 2017-12-02 15:55

    你判断什么,数据库是否有这个记录,还是查找的username为null
    后者直接sql的where条件写null
    前者就是你的那样,hasrows就可以。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题