MsgBox CStr(TmpRecordset.Fields(0)), , "TmpRecordset.Fields(0)1"
你把上面代码中的CStr去掉,再试试

解决方案 »

  1.   

    这应该不是VB的问题,以前我在使用SQLServer7的时候有过这种现象,尤其是当使用Union查询,且Union部分有Sum或其它合计算法时,经常会有多100倍或10000或0.01倍等数字差,原因不明。后来将求合计前,合计后的数值都再Convert(number(12,2),....)一次,这样对于简单的还可以解决,复杂一点的干脆就解决不了。
    不过我说的是SqlServer的错误,不知道Sybase是不是也和他一样有同样的错误。必竟两个产品出自同一版本。
      

  2.   

    检查字段“session_debit_money”的类型,并且检查TmpRecordset.Fields(0)
    .Type的值与字段类型是否相同