发明名称 | 关于数据库的方法 | ||
摘要 | 本发明涉及能够使数据库中的多个对象(10,20,30)一致读取的方法。该方法适用于在一个数据库中通过在两个阶段上锁来管理交易,第一阶段(A)包括一个访问受交易影响的对象(10,20,30)的请求,并在获得该访问后立刻锁定该对象,而第二阶段包括提交该交易并解除第一阶段中设置的所有锁,。交易在第一阶段(A)中执行所有的数据改变操作,交易在第二阶段(B)之后保持在第三阶段(C)中对对象(10,20,30)的访问。第三阶段(C)尽可能执行最大量的未变操作,然后交易关闭对所述对象的访问,从而本发明的方法在解除所述锁定之后,即在第二阶段(B)之后的第三阶段(C),在数据库中提供了受未变操作影响的对象的一致抽点打印。 | ||
申请公布号 | CN1119764C | 申请公布日期 | 2003.08.27 |
申请号 | CN99804267.6 | 申请日期 | 1999.01.21 |
申请人 | 艾利森电话股份有限公司 | 发明人 | D·A·比约尔尼尔斯特德特 |
分类号 | G06F17/30 | 主分类号 | G06F17/30 |
代理机构 | 中国专利代理(香港)有限公司 | 代理人 | 王勇;王忠忠 |
主权项 | 1.一种能够使一个数据库中的多个对象被一致读取的方法,其中通过在两个阶段上锁定来管理交易,其中第一阶段包括一个访问受交易影响的对象的请求,并在获得该访问后锁定该对象,其中第二阶段包括提交该交易并解除第一阶段中设置的所有锁定,其中在一个交易中所执行的实际工作包括改变一个对象的操作和/或不改变一个对象的操作,其中通过将新内容写到该对象的一个新版本实现更新或改变一个对象的内容,其中对象在交易之前的当前版本被保留,直到不再有其它交易使用当前版本为止,其中交易在第一阶段中执行所有的数据改变操作,其特征在于交易在第二阶段之后保持用于读取相关对象版本的访问;所述交易在第二阶段之后尽可能执行最大量的未变操作;所述交易在执行了所述未变操作之后关闭对所述对象的访问,从而所述方法在解除所述锁定之后,在数据库中提供了受影响对象的一致抽点打印;以及在第二阶段之后对一个对象的访问在于将相应对象的当前版本标记为被该交易所用,以及关闭对这些对象的访问在于删除所述标记。 | ||
地址 | 瑞典斯德哥尔摩 |