编写了一个小系统,其中有对数据库的统计运算,我用数据访问对象来解决的。数据库是每日更新的,有关键字“日期”,其他字段名有“取款”,“存款”等,现在要对文本框中指定的日期段在数据库中进行相应的统计求和,这里假设是计算“取款”数量并且假定指针已经定位到起始记录处
select case combo1.text
case "取款"
do while not db_r.eof and db_r.fields("日期").value<=cdate(text2.text)
'text2.text为输入到文本框中的截止日期
number=number+db_r.fields("取款").value '求和
db_r.movenext
loop
case ....
end select
问题是这样的:当把截止日期(即text2.text)输入数值为数据库中的最后一条记录的日期时,程序运行会死!!!而除此之外,任何统计都可按照计划进行,谁知道问题出在哪里了?注:除了数据库的最后一个记录不可统计外,其余的日期范围内都可以顺利进行,所以我认为字段名和日期转换函数不会错!
select case combo1.text
case "取款"
do while not db_r.eof and db_r.fields("日期").value<=cdate(text2.text)
'text2.text为输入到文本框中的截止日期
number=number+db_r.fields("取款").value '求和
db_r.movenext
loop
case ....
end select
问题是这样的:当把截止日期(即text2.text)输入数值为数据库中的最后一条记录的日期时,程序运行会死!!!而除此之外,任何统计都可按照计划进行,谁知道问题出在哪里了?注:除了数据库的最后一个记录不可统计外,其余的日期范围内都可以顺利进行,所以我认为字段名和日期转换函数不会错!
解决方案 »
- VB6.0 我在我的机子里面LABEL控件都显示的很完整,为什么到别的电脑里面就总是显示不全呢?
- 文本框编写VBS 脚本
- VB中关于crc校验算法问题
- VB6.0调用存储过程时提示Timeout expired,以前都很正常,现在突然冒出这个问题来了,急!
- 如何将VB将图片存入sql server中,和读出sql server中的图片?
- F1Book合并问题?急!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- ADO 的 Find 问题?
- treeview水平滚动条
- 请教高手关于记录集的问题,急!!!
- 如何改变ToolBar的高度或者ToolBar上按钮的高度?
- 请问如何在一个窗体里的事件里面调用另一个窗体的事件?
- 如何取得一个自己定义的动态数组或者集合里面总共有多少元素
,这时再movenext会出错啊。
而且你的那段代码好像也没错啊。要不你用sql里面的sum函数再试试
这部分。所以会出错。
改进的方法,一:直接用SQL语句汇总:slect sum(取款)as 取款总数 from ... where ...
二:do while的条件分两行写:
do while not db_r.eof
if db_r.fields("日期").value<=cdate(text2.text) then
number=number+db_r.fields("取款").value '求和
end if
db_r.movenext
loop
你在哪里?请你恰饭!!!!!!!!!!!!!!