qq_38313941
梦清川
采纳率80%
2017-12-02 13:33

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条回答

  • u013667895 「已注销」 4年前

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

    点赞 1 评论 复制链接分享
  • caozhy 回答这么多问题就耍赖把我的积分一笔勾销了 4年前

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

    点赞 评论 复制链接分享
  • qq_23126581 郭老师的小迷弟雅思莫了 4年前

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

    点赞 评论 复制链接分享