我的程序不能编译,为什么?

mdhandxy 2003-04-26 08:10:58
我的毕业设计是用VFP6.0做的,在编译的时候出现不能更新临时表的错误,请问原因是什么?
...全文
46 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiaxingxing 2003-04-26
  • 打赏
  • 举报
回复
你的错误有二个:

1、vfp6下cursor 表是不可更新的
2、你的代码中有了:
seek getpname
if found()
为什么还要下面这句:
select * from personnel where pname=getpname into cursor ling
if found()
thisform.pageframe1.page3.enabled=.t.
thisform.pageframe1.page3.refresh
else
......
endif
jiaxingxing 2003-04-26
  • 打赏
  • 举报
回复
vfp6下cursor 表是不可更新的
mdhandxy 2003-04-26
  • 打赏
  • 举报
回复
第一个查询条件的时候老是提示输入查询条件,我已经输入了!
mdhandxy 2003-04-26
  • 打赏
  • 举报
回复
谢谢
zhongyj 2003-04-26
  • 打赏
  • 举报
回复
更正
if thisform.pageframe1.page2.check3.value=1
exp1=" and pid=getpid"
endif
->
if thisform.pageframe1.page2.check3.value=1
exp1=" and pname=getpname"
endif
shulin520 2003-04-26
  • 打赏
  • 举报
回复
重装一遍!!
zhongyj 2003-04-26
  • 打赏
  • 举报
回复
我幫你改一下
exp1=""
if thisform.pageframe1.page2.check1.value=1
exp1="pid=getpid"
endif
if thisform.pageframe1.page2.check3.value=1
exp1=" and pid=getpid"
endif
if left(exp1,5)=" and "
exp1=right(exp1,len(exp1)-5)
endif
if empty(exp1)
messagebox("请输入查询条件",48,"错误")
else
select * from personnel where &exp1 into cursor ling
if reccount()=0
messagebox("记录不存在",48,"注意")
else
thisform.pageframe1.page3.enabled=.t.
thisform.pageframe1.page3.refresh
endif
endif
mdhandxy 2003-04-26
  • 打赏
  • 举报
回复
我是在编译的时候VFP提示说不能更新临时表,我也不清楚那里错误,但是我的系统里只有这个查询用到了临时表,请问是不是要给这个表去掉只读属性呢?若是要,请问怎么样能办到?
getpid=allt(thisform.pageframe1.page2.text1.value)
getpname=allt(thisform.pageframe1.page2.text2.value)
flag1=thisform.pageframe1.page2.check1.value
flag2=thisform.pageframe1.page2.check3.value
if flag1=0 and flag2=0
messagebox("请输入查询条件",48,"错误")
endif
if flag1=1 and flag2=0
set order to pid
seek getpid
if found()
select * from personnel where pid=getpid into cursor ling
thisform.pageframe1.page3.enabled=.t.
thisform.pageframe1.page3.refresh
else
messagebox("记录不存在",48,"注意")
endif
endif
if flag1=0 and flag2=1
set order to pname
seek getpname
if found()
select * from personnel where pname=getpname into cursor ling
thisform.pageframe1.page3.enabled=.t.
thisform.pageframe1.page3.refresh
else
messagebox("记录不存在",48,"注意")
endif
endif
if flag1=1 and flag2=1
seek getpid
if personnel.pname=getpname
select * from personnel where pid=getpid and pname=getpname into cursor ling
thisform.pageframe1.page3.refresh
else
messagebox("记录不存在",48,"注意")
endif
endif

zhongyj 2003-04-26
  • 打赏
  • 举报
回复
找出出錯的程序位置,把代碼貼出

2,749

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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