帮忙解决一下!!!!!菜鸟请教游标问题!!!!

alizeea 2006-02-23 07:26:20
declare sc cursor for
select familyname
from login;
open sc;
fetch sc into :name;

select isnull(sum(timespan),0) into :Atypetime
from timer inner join
task_edit on timer.task_desc=task_edit.task_desc
where (familyname=trim(:name)) and task_type='A类非产值用时' and ( nowdate >= :dt_start) and (nowdate <= :dt_end) ;

fetch sc into :name;
loop
close sc;

这个是一个报表中的游标使用
大体上是统计各个员工 按照任务类型 的用时总量
各个表的字段如下:


表login: id,password,familyname
表timer:familyname,task_desc,timespan(耗时),row_date(日期)
表task_edit:task_type(任务类型),task_desc(任务描述)

各表中涉及string均置成varchar型

为什么一直显示Atypetime 的值为0呢?明明不为0啊
假如不使用游标就正常了 是不是由于 (familyname=trim(:name)) 的缘故啊

...全文
88 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzheng2001 2006-02-24
  • 打赏
  • 举报
回复
select isnull(sum(timespan),0) into :Atypetime
这句改成:
select sum( isnull(timespan,0) ) into :Atypetime

alizeea 2006-02-23
  • 打赏
  • 举报
回复
我用了messagebox("",name+string(len(name)))
检查了长度 和实际的不符合
所已 我手工去除了 字段后的空格,又该成了varchar型
但还是不行啊
WorldMobile 2006-02-23
  • 打赏
  • 举报
回复
仔细看一下
declare sc cursor for
select familyname
from login;
open sc;
fetch sc into :name;
后name的值,可能问题就在这儿

754

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧