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

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

qq_38313941
梦清川 好的 谢谢!
2 年多之前 回复

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

qq_38313941
梦清川 cl是个变量,表示的值就是数据库表里的字段,我要判断数据库是否有这个记录,但是不管数据库是否为空,bool值都为真
2 年多之前 回复
qq_38313941
梦清川 cl是个变量,表示的值就是数据库表里的字段,我要判断数据库是否有这个记录,但是不管数据库是否为空,bool值都为着女
2 年多之前 回复

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

qq_38313941
梦清川 判断数据库是否有记录,可是数据库是空的,结果一直返回为真,怎么修改?
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐