各位高手,我现在用odbc连到informix库,然后用OdbcDataReader
读数据,但是当我用到
OdbcDataReader.IsDBNull(0) 方法判断字段是否为空时报错"不存在此行/列的数据"但是用OdbcDataReader.getString(0) 或其他的方法都不报错而我的数据中又时不时的会出现空值,又必须用IsDBNull()来判断一下请问各位高手怎么搞定这个问题

解决方案 »

  1.   

    用HasRows属性判断是不是有数据.
      

  2.   

    对不起,刚才理解错了.
    你在判断前先执行OdbcDataReader.Read();
      

  3.   

    用ToString().Equals(System.DBNull)看看阿
      

  4.   

    OdbcDataReader.Read()我用了,我是这样用的
    while(OdbcDataReader.Read()){ 
      ........循环读数据的程序程序
    }问题是我只是某个字段为空值,不是一行为空,
    因此我要能有个方法先判断一行的某个字段是否为空,然后再进行其他处理
    而我用OdbcDataReader.IsDBNull()却报错"不存在此行/列的数据"
      

  5.   

    你要确定你所查询的SQL语句中到底是否包括这一列,我是用下面的方法确保不会搞错列,给你参考:
    dbReader.IsDBNull(dbReader.GetOrdinal(colName));//colName是所检测的数据列