使用if语句检查IsDBNull

时间:2014-10-07 05:03:32

标签: c#

代码只检查是否有条件,它避免了其他条件,我在使用IsDBNull时做错了什么?如果"如果"条件失败,我希望它去其他条件。

while (rd.Read())
{
    if (!rd.IsDBNull(0))
    {
        //update table
    }
    else
    {
        //update table 
    }
}

任何人都可以帮助我,谢谢

2 个答案:

答案 0 :(得分:1)

如果条件为false,if语句将始终转到else

我看不到你的表,所以我只能推测,对于永远的行读取,第一列(通常是PK)不是空的。

请记住,一旦不再有任何行要读取,该循环将停止。你要检查的是第一列是否为空(正如你所看到的,它永远不会是)

if语句有效且一直有效。

答案 1 :(得分:1)

你确定你的记录有任何行吗?如果没有,它可能看起来好像你的if失败了,而实际上它永远不会被调用。

您可以使用属性HasRows进行检查。