起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: stellastarr

【搞定】关于主从数据集的事务的问题**

[复制链接]
发表于 2007-2-5 14:20:04 | 显示全部楼层
有没有一种更高效的交互方式呢;)
回复 支持 反对

使用道具 举报

发表于 2007-2-5 15:39:31 | 显示全部楼层
没有明白10楼的意思?ApplyUpdates(True),是主从一起成功一起失败的,

我觉得你先别搞那么复杂,就在一个窗体上做,放一个数据导航上来,然后主从一起修改,让主数据集(或者从数据集)记录的主键重复,然后保存,看看,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-5 16:24:20 | 显示全部楼层
为了测试主从数据集的事务是否在同一数据集中,我们进行了如下测试:
首先我们修改了从数据集中的数据(没有触发异常的情况下)并且写入到数据库中
然后我们再修改主数据集中的数据(但这时我们人为触发异常使其数据无法修改)这时我们想要的效果就是刚才我们修改的从数据集中的数据回滚到没有修改前的状态
版主,我这样描述能理解吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-5 17:10:03 | 显示全部楼层
请版主说说自己测试的过程或把资源包发过来看一下
回复 支持 反对

使用道具 举报

发表于 2007-2-6 08:58:18 | 显示全部楼层
楼主,13楼的描述已经不是事务的问题了。你应该对事务的理解偏了。

事务应该这样的,你修改从数据集,仅仅post到本地。然后修改主数据集,修改后,主数据集如果提交数据库肯定报错,例如主键重复。此时实现主从一起提交到数据库,采用 ApplyUpdates(True),这样从数据集也肯定保存不到数据库上的。
回复 支持 反对

使用道具 举报

发表于 2007-2-6 08:58:52 | 显示全部楼层
对于事务的描述,可以到网上搜索一下,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-6 09:04:59 | 显示全部楼层
那么版主是如何测试这个事务的问题的呢?(请说一下测试过程,把相关的资源包传上来我看一下)
回复 支持 反对

使用道具 举报

发表于 2007-2-6 09:12:08 | 显示全部楼层
这是从网上搜索出来的对事务的描述,请先阅读一下

http://hi.baidu.com/bolove/blog/ ... 7b3ef41ad5763f.html

http://211.67.81.17/quickstart/h ... /DatabaseTrans.aspx

http://blueurchin.bokee.com/3799137.html

这样的帖子网上很多的哦
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-2-6 10:25:56 | 显示全部楼层
因为业务需要,我们需要达到13楼的效果,版主,请给个解决方法
回复 支持 反对

使用道具 举报

发表于 2007-2-6 11:24:38 | 显示全部楼层
呵呵,不知道楼主是否已经理解事务的概念和用法了。因业务需求,需要实现13楼的效果,这部分平台没有啥特殊的方法,跟普通的开发工具一样,肯定需要自己来记录这样的整个过程。

例如何时开始,记录是新增的记录还是删除记录还是修改的记录,是修改的原来的值是啥,何时算整个的动作完成。

我个人的建议,是修改从数据集不要保存到数据库上,而是post本地,等主数据集修改完,直接采用 ApplyUpdates(True),实现主从一起成功或者一起失败
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2024-12-25 09:29 , Processed in 0.040109 second(s), 13 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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