首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

判断 SqlDataReader 返回的是null 的有关问题

2012-02-09 
判断 SqlDataReader 返回的是null 的问题SqlDataReaderreadercmd.ExecuteReader()while(reader.Read()){

判断 SqlDataReader 返回的是null 的问题
SqlDataReader   reader   =   cmd.ExecuteReader();

while   (reader.Read())
{
.....
}

返回的是空表,但是     reader.Read()   返回值是true
用SQL查询分析器执行我的sql指令得到如下结果
            无列名
1           null

如何判断reader   返回的是空呢

[解决办法]
reader[0] is DBNull
[解决办法]
DBNull
[解决办法]
dr.HasRows == false
[解决办法]
既然用SQL查询分析器执行sql指令得到如下结果
无列名
1 null
说明语句返回的不是空,还是有一行数据的所以
dr.HasRows == true
reader.Read() == true
这时应该修改sql语句使返回为空,或者判断reader[0] is DBNull
[解决办法]
检查主键是否为空,就是把它和DBNull.Value对比

热点排行