起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 138|回复: 7

【结】提交数据

[复制链接]
发表于 2009-11-30 09:37:53 | 显示全部楼层 |阅读模式
while not TSQLDataSet(jhcb.DataSet).Eof do
  begin
      TSQLDataSet(jhcb.DataSet).Edit;
      TSQLDataSet(jhcb.DataSet).FieldByName('tzdbh').AsString:=xxx;
      TSQLDataSet(jhcb.DataSet).post;
    end;


这样循环到最后数据都没有保存
想问问   把数据集更新的数据最后一次保存应该用数据集的那个方法?
回复

使用道具 举报

发表于 2009-11-30 09:42:08 | 显示全部楼层
applyupdats
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-30 09:46:32 | 显示全部楼层
这样不行
只更新了一条记录

我想做的是把这个数据集循环post   
在最后的时候把所有更新的数据提交到数据库
回复 支持 反对

使用道具 举报

发表于 2009-11-30 09:51:24 | 显示全部楼层
哦,你在循环内部要写next
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-30 10:13:10 | 显示全部楼层
那你意思是每次都applyupdates
并不是每次post后  
在最后的时候一个整个的提交
回复 支持 反对

使用道具 举报

发表于 2009-11-30 10:27:44 | 显示全部楼层
不是
你在里面没有移动光标,应该这样

while not TSQLDataSet(jhcb.DataSet).Eof do
  begin
      TSQLDataSet(jhcb.DataSet).Edit;
      TSQLDataSet(jhcb.DataSet).FieldByName('tzdbh').AsString:=xxx;
      TSQLDataSet(jhcb.DataSet).Next;//  Next除了移动光标外,也执行了post,所以可以不用写Post
    end;
TSQLDataSet(jhcb.DataSet).ApplyUpdates;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-30 10:47:22 | 显示全部楼层
谢谢了
可以了  结贴吧
回复 支持 反对

使用道具 举报

发表于 2009-11-30 11:23:18 | 显示全部楼层
ok
,
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-14 00:32 , Processed in 0.041441 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表