[发明专利]一种面向对象代理数据库约束的备份方法无效
申请号: | 201210183862.3 | 申请日: | 2012-06-06 |
公开(公告)号: | CN102693174A | 公开(公告)日: | 2012-09-26 |
发明(设计)人: | 彭智勇;洪亮;何镝;余鸣;周玉 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F17/30 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 严彦 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 对象 代理 数据库 约束 备份 方法 | ||
1.一种面向对象代理数据库约束的备份方法,其特征在于,包括以下步骤:
步骤1,对于一个需要进行备份的对象代理数据库,提取相关的数据库系统表中保存的约束信息;
步骤2,根据步骤1所得约束信息进行可备份对象链构建,包括为每个可备份对象创建对象模式信息,获取类对象的对象数据和局部依赖信息,以及加入全局依赖信息,得到一个可备份对象链;
步骤3,进行可备份对象安全排序,包括对步骤2所得可备份对象链中所有可备份对象进行重新排序,然后按可备份对象之间的依赖关系进行拓扑排序,得到一个可备份对象的安全序列。
2.如权利要求1所述面向对象代理数据库约束的备份方法,其特征在于:步骤2中,
为每个可备份对象创建对象模式信息的实现方式为,获取出所有需要导出的可备份对象的对象模式信息,将可备份对象的对象模式信息保存在导出结构体中;
获取类对象的对象数据的实现方式为,循环扫描每一个模式表,判断是否是需要备份的类对象,如果是,则为类对象的对象数据分配存储表数据信息的空间以及备份标识符,备份标识符从1开始递增;并将类对象的导出结构体存入备份标识符数组中,且备份标识符数组下标为其备份标识符;
加入全局依赖信息的实现方式为,检索到具有依赖关系的可备份对象对后,通过对具有依赖关系的两个对象分别对应的对象标识符搜索得到对应的导出结构体,然后给两个对应的导出结构体加入依赖上的联系,依赖对象的对象标识符存放在被依赖对象结构体的依赖对象标识符信息中。
3.如权利要求1所述面向对象代理数据库约束的备份方法,其特征在于:步骤3中,
对步骤2所得可备份对象链中所有可备份对象进行重新排序的实现方式为,不同类型的可备份对象的导出优先级取决于可备份对象类型优先级数组,可备份对象类型优先级数组记录了可备份对象的类型排序和对象标识符排序结果,相同类型的可备份对象按照名称排序;
按可备份对象之间的依赖关系进行拓扑排序的实现方式为,依赖于其他对象的对象,其备份总是在其依赖的对象备份后进行。
4.如权利要求1或2或3所述面向对象代理数据库约束的备份方法,其特征在于:相关的数据库系统表包括tt_class、tt_attribute、tt_constraint、tt_proc、tt_depend、tt_deputytype、tt_deputy、tt_bipointer和tt_mapping,
系统表tt_class记录所有类的定义信息,系统表tt_attribute记录所有类的属性描述信息,系统表tt_constraint记录类上的局部依赖信息,系统表tt_proc记录类的方法描述信息,系统表tt_depend记录对象之间的切换依赖关系,系统表tt_deputytype记录代理类的相关代理信息,系统表tt_deputy记录源类和代理类间的关系,系统表tt_bipointer记录对象和代理类间的关系,系统表tt_mapping记录类和对象与其物理地址的映射关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210183862.3/1.html,转载请声明来源钻瓜专利网。