CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

读取数据库记录时,计算字段因某种原因未能取得值,请问该如何判断这种情况?

楼主zjsunshine(日出东方)2006-03-02 10:47:15 在 .NET技术 / ASP.NET 提问

cmdstr   =   "select   sum(xsts)   as   xsts,sum(xsmj)   as   xsmj,sum(xsjj*xsmj)/sum(xsmj)   as   jj     from   qk   where   rq   between   "   +   minday   +   "   and   "   +   maxday    
                  cmd   =   New   OleDbCommand(cmdstr,   con)  
                  con.Open()  
                  dr   =   cmd.ExecuteReader()  
                  If   dr.Read()   Then  
                          If   IsDBNull(dr("xsts"))   Then  
                                  lbl_zj_cjts.Text   =   ""  
                          Else  
                                  lbl_zj_cjts.Text   =   dr("xsts")  
                          End   If  
   
                          If   IsDBNull(dr("xsmj"))   Then  
                                  lbl_zj_cjmj.Text   =   ""  
                          Else  
                                  lbl_zj_cjmj.Text   =   dr("xsmj")  
                          End   If  
   
                          If   IsDBNull(dr("jj"))   Then  
                                  lbl_zj_jj.Text   =   ""  
                          Else  
                                  lbl_zj_jj.Text   =   dr("jj")  
                          End   If  
                  End   If  
   
   
  此代码一般情况下能正常运行,但当sum(xsmj)为0时就会出错。  
   
  “/real”应用程序中的服务器错误。  
  --------------------------------------------------------------------------------  
   
  提供程序无法确定   Double   值。例如,该行刚刚创建,未提供   Double   列的默认值,并且使用者尚未设置新   Double   值。    
  说明:   执行当前   Web   请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。    
   
  异常详细信息:   System.InvalidOperationException:   提供程序无法确定   Double   值。例如,该行刚刚创建,未提供   Double   列的默认值,并且使用者尚未设置新   Double   值。  
   
  源错误:    
   
   
  行   364:                         End   If  
  行   365:  
  行   366:                         If   IsDBNull(dr("jj"))   Then  
  行   367:                                 lbl_zj_jj.Text   =   ""  
  行   368:                         Else  
     
  请问该如何解决? 问题点数:20、回复次数:2Top

1 楼jiang8282(雪山飞狐)回复于 2006-03-02 10:59:41 得分 20

sql语句中:  
  nullif(sum(xsmj),0)Top

2 楼zjsunshine(日出东方)回复于 2006-03-02 11:33:22 得分 0

飞狐兄:  
  select   语句用了nullif()报错“表达式中   'nullif'   函数未定义”  
  我用的是accessTop

相关问题

  • 怎样读取数据库中字段的值?
  • 读取数据库字段信息怎么读?
  • 能不能直接读取数据库表中的字段名?
  • 数据库中的OLE字段的读取问题。
  • 如何读取数据库字段的说明文字?
  • 如何读取SQL数据库的特定字段
  • 请教:VC下ADO读取数据库中各字段的值
  • vb读取数据库字段的函数
  • 读取数据库blob字段的问题
  • 如何从数据库读取为空的datetime字段?

关键词

  • xsmj
  • lbl
  • zj
  • 值
  • jj
  • isdbnull
  • dr
  • xsts
  • nullif
  • 错误

得分解答快速导航

  • 帖主:zjsunshine
  • jiang8282

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo