游标使用出错

longchen2002 2011-08-31 10:18:12
li_cs=1
declare lcur_yb cursor for
select MS_CF01.fphm from MS_CF01, MS_MZXX where MS_MZXX.BRID = MS_CF01.BRID and kfrq>= :ld_begin and kfrq<= :ld_end and ysdm=:ls_sle and fyck=1 and MS_MZXX.brxz=:ll_brxz and MS_MZXX.sjfp = MS_CF01.fphm and MS_MZXX.zfpb=0;
open lcur_yb;
fetch lcur_yb into :ls_fphm

do while sqlca.sqlcode = 0
a=ls_fphm

fetch lcur_yb into :ls_fphm
b=ls_fphm
if a <> b then
li_cs+=
end if
loop
close lcur_yb;
dw_1.object.cfs[ll_row] = li_cs
...全文
106 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
nvhaixx 2011-08-31
  • 打赏
  • 举报
回复
fetch lcur_yb into :ls_fphm 之后少了分号
yyoinge 2011-08-31
  • 打赏
  • 举报
回复
fetch lcur_yb into :ls_fphm
后面要加分号
fetch lcur_yb into :ls_fphm;

li_cs+=
语法错误,应为
li_cs += 1
或者
li_cs ++
yyoinge 2011-08-31
  • 打赏
  • 举报
回复
li_cs=1
declare lcur_yb cursor for
select MS_CF01.fphm from MS_CF01, MS_MZXX where MS_MZXX.BRID = MS_CF01.BRID
and kfrq>= :ld_begin and kfrq<= :ld_end and ysdm=:ls_sle and fyck=1
and MS_MZXX.brxz=:ll_brxz and MS_MZXX.sjfp = MS_CF01.fphm and MS_MZXX.zfpb=0;
open lcur_yb;
fetch lcur_yb into :ls_fphm;

do while sqlca.sqlcode = 0
a=ls_fphm

fetch lcur_yb into :ls_fphm;
b=ls_fphm
if a <> b then
li_cs += 1
end if
loop
close lcur_yb;
dw_1.object.cfs[ll_row] = li_cs
longchen2002 2011-08-31
  • 打赏
  • 举报
回复
提示:ERROR C00031:syntax error
yyoinge 2011-08-31
  • 打赏
  • 举报
回复
什么错误啊,提问要有方法
lightsword1 2011-08-31
  • 打赏
  • 举报
回复
代码的书写规范
Nate 2011-08-31
  • 打赏
  • 举报
回复
三楼正解,遗漏两个分号和一个常量值

1,109

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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