[发明专利]用于数据库的事务控制方法有效
申请号: | 200910089469.6 | 申请日: | 2009-07-20 |
公开(公告)号: | CN101957823A | 公开(公告)日: | 2011-01-26 |
发明(设计)人: | 倪慧;刘开飞;潘森 | 申请(专利权)人: | 北京数码大方科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 余刚 |
地址: | 100080 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 数据库 事务 控制 方法 | ||
技术领域
本发明涉及数据库领域,具体而言,涉及一种用于数据库的事务控制方法。
背景技术
在行为传播过程控制的系统中,传统的事务控制无法在功能的连续调用过程中持续,难以保证在传播过程中数据的完整性和一致性。在系统功能在连续调用过程中出现异常情况下,会引起单个事务的回滚。
在实现本发明过程中,发明人发现现有技术中事务回滚只是将当前所操作对象的数据恢复原样,而没有将传播过程中的被包含在其它事务中的传播对象进行回滚,导致在数据库中产生坏数据,影响了数据库系统整体数据的准确性。
发明内容
本发明旨在提供一种用于数据库的事务控制方法,能够解决现有技术中因没有将传播过程中的被包含在其它事务中的传播对象进行回滚而导致的数据库中产生坏数据,影响系统整体数据的准确性问题。
在本发明的实施例中,提供了一种用于数据库的事务控制方法,包括以下步骤:
根据行为传播的规则,将所要传播的行为对象加入到同一事务处理中;
创建第一事务并把当前传播的行为对象加入到所述第一事务中;
执行所述当前传播的行为对象,如果所述行为传播不成功,将所述行为传播过程中所操作的行为对象回滚到所述行为传播之前的状态。
优选地,在上述用于数据库的事务控制方法中,还包括以下步骤:如果所述行为传播成功,查找下一个传播对象;如果没有查找到所述下一个传播对象,提交所述第一事务。
优选地,在上述用于数据库的事务控制方法中,还包括以下步骤:如果找到所述下一个传播对象,获取所述下一个传播对象的属性;根据所述下一个传播对象的属性,对所述下一个传播对象执行所述行为传播。
优选地,在上述用于数据库的事务控制方法中,根据所述下一个传播对象的属性,对所述下一个传播对象执行所述行为传播具体包括:如果根据所述下一个传播对象的属性判定所述下一个传播对象参与到所述第一事务中,在所述第一事务中对所述下一个传播对象执行所述行为传播。
优选地,在上述用于数据库的事务控制方法中,还包括以下步骤:如果根据所述下一个传播对象的属性判定对所述下一个传播对象创建第二事务,在所述第二事务中对所述下一个传播对象执行所述行为传播。
在上述实施例中,通过采用行为传播规则来判断是否将传播的行为加入到同一事物处理中,然后在开始执行行为传播时,先创建一个新的事务并把当前传播的行为对象加入到创建的事务中,如果执行当前传播的行为对象,传播不成功,则将行为传播过程中所操作的行为对象回滚到行为传播之前的状态。对事务回滚将当前所操作对象的数据恢复原样,并且将传播过程中的被包含在其它事务中的传播对象也进行回滚,所以克服了现有技术中因没有将传播过程中的被包含在其它事务中的传播对象进行回滚而导致的数据库中产生坏数据,影响系统整体数据的准确性问题,进而达到了实现了在行为传播过程中保证数据库系统整体数据的准确性的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了根据本发明一个实施例的一种用于数据库的事务控制方法的流程图;
图2示出了根据本发明一个实施例的行为传播过程中事务控制的流程图。
具体实施方式
下面将参考附图并结合实施例,来详细说明本发明。
图1示出了根据本发明一个实施例的一种用于数据库的事务控制方法的流程图,包括以下步骤:
S102,根据行为传播的规则,将所要传播的行为对象加入到同一事务处理中;
S104,创建第一事务并把当前传播的行为对象加入到第一事务中;
S106,执行当前传播的行为对象,如果行为传播不成功,将行为传播过程中所操作的行为对象回滚到行为传播之前的状态。
本实施例通过行为传播规则来判断是否将传播的行为加入到同一事物处理中,然后在开始执行行为传播时,先创建一个新的事务并把当前传播的行为对象加入到创建的事务中,如果执行当前传播的行为对象,传播不成功,则将行为传播过程中所操作的行为对象回滚到行为传播之前的状态。对事务回滚将当前所操作对象的数据恢复原样,并且将传播过程中的被包含在其它事务中的传播对象也进行回滚,从而解决了现有技术中因没有将传播过程中的被包含在其它事务中的传播对象进行回滚而导致的数据库中产生坏数据,影响系统整体数据的准确性问题。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京数码大方科技有限公司,未经北京数码大方科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910089469.6/2.html,转载请声明来源钻瓜专利网。