有关clientdatset存储的问题

jumphigh 2000-08-25 03:37:00
知道什么原因吗

cds1.FieldByName('Vspelling').asstring:=edit1.Text;
cds1.FieldByName('Vexplain').asstring:=dbmemo1.Text;
cds1.FieldByName('Vexemplify').asstring:=dbmemo2.Text;
cds1.Insert;
cds1.Post;
cds1.SaveToFile('Vuser.cds'); //为什么这句话没有作用,
我在添加recoed之后,savetofile 可是Vuse.cds还是和原来一样
...全文
117 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Kingron 2001-05-25
  • 打赏
  • 举报
回复
提问者:如要继续讨论请定期提前贴子,反之请结束贴子,否则将在两周之内被强制结束或者删除。
jumphigh 2000-08-25
  • 打赏
  • 举报
回复
我在formcreate事件里添加了
loadfromfile但是没用
lotto 2000-08-25
  • 打赏
  • 举报
回复
在程序开始时你是否使用过cds1.loadfromfile...
如果你没有用过,那么程序中操作的数据库是包含在clientdataset中的数据,故每次看到的都是老样子,建议你删除掉原来的cds1,然后重新放置一个clientdataset,命名为cds1,操作顺序如下,就ok了:
cds1.loadfromfile('Vuser.cds'');
cds1.insert;
cds1.fieldbyname....
cds1.post;
cds1.savetofile('Vuser.cds');
w102272 2000-08-25
  • 打赏
  • 举报
回复
奇怪,我可从来没有遇到你碰到的这个问题。
如果不行,你挪挪记录位置,或者关掉再打开。
jumphigh 2000-08-25
  • 打赏
  • 举报
回复
insert放在前面也不行
问题是没办法更新数据
当savetofile之后,数据库是变了,可在程序中还是老样子
w102272 2000-08-25
  • 打赏
  • 举报
回复
cds1.Insert;的目的是准备一条空白记录供填写。INSERT以后立刻POST当然没有效果。
你应该用这样的顺序:
cds1.insert;(插新记录的情况) 或者 CDS1.EDIT;(修改记录的情况)
CDS1.Fieldbyname.....
cds1.post;
cds1.savetofile
这样就OK了。

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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