一种在异构数据库之间迁移数据对象的方法及系统与流程

文档序号:31053235发布日期:2022-08-06 08:55阅读:来源:国知局

技术特征:
1.一种在异构数据库之间迁移数据对象的方法,其特征在于,所述方法应用于具有应用层、引擎层和存储层的应用软件,包括以下步骤:s1.通过应用层为应用软件使用者提供软件界面和sdk软件开发应用包的接入方式;s2.通过引擎层读取使用者的配置信息,将待迁移数据库中的数据对象解析成通用数据对象模型,再将通用数据对象模型生成目标数据库语言或者生成编程语言实体类;s3.通过存储层将目标数据库语言或者编程语言实体类写入到目标数据库中,并生成日志文件。2.根据权利要求1所述的在异构数据库之间迁移数据对象的方法,其特征在于,步骤s1中,配置信息包括待迁移数据库的数据源驱动器、数据库链接、用户名、密码以及需要生成数据对象的目标数据库的数据源驱动器或者自定义驱动器文件位置、数据库链接、用户、密码;在应用层会对待迁移数据库和目标数据库进行连通性测试;连通性测试通过后使用sdk软件开发应用包,形成yaml配置文件。3.根据权利要求2所述的在异构数据库之间迁移数据对象的方法,其特征在于,步骤s2中包括子步骤s21.引擎层读取应用层的yaml配置文件并进行待迁移数据库的连接,将待迁移数据对象加载到程序对应的实体类中,通过判断待迁移数据库的类型,选择相应的驱动方式,使用驱动管理器连接待迁移数据库,驱动注册之后,将驱动管理器保存在已注册的驱动列表中。4.根据权利要求3所述的在异构数据库之间迁移数据对象的方法,其特征在于,步骤s2中包括子步骤s22.获取待迁移数据库表信息:通过驱动管理器的获取元数据方法获取待迁移数据库的元信息,通过元信息获取到所有的表名和表注释,将获取到的表名和表注释映射到待迁移数据库表实体类中,此时应用软件页面将显示所有的待迁移数据库表名和表注释;使用sdk软件开发应用包的方式将待迁移数据库表信息记录到日志文件;从而完成待迁移数据对象到待迁移数据库表实体类的映射。5.根据权利要求4所述的在异构数据库之间迁移数据对象的方法,其特征在于,步骤s2中包括子步骤s23.获取字段信息并生成通用数据对象模型:通过驱动管理器的预编译获取预编译对象,再通过预编译对象的getmetadata()方法获取结果集元数据,再通过getcolumns()方法获取待迁移数据库表信息的字段信息,索引也通过getindexinfo()方法进行获取;通过预编译对象获取注释信息;最后将获取的字段信息、索引和字段注释映射到通用数据对象模型中。6.根据权利要求5所述的在异构数据库之间迁移数据对象的方法,其特征在于,步骤s2中包括子步骤s24.进行数据字段的转换,包括首先构建各个数据库之间的数据类型映射关系表,通过数据类型映射关系表加正则匹配的方式实现待迁移数据库到目标数据库数据对象类型的转换;其次根据数据类型映射关系表与通用表字段实体类进行比对与替换;最后生成一个新的目标数据库表字段实体类。7.根据权利要求6所述的在异构数据库之间迁移数据对象的方法,其特征在于,数据类型映射关系表中,在存在待迁移数据库表中的字段与目标数据库表字段是一对多的关系的情况下,通过在程序中使用正则表达式number\(\d+\s*(\,\s*\d+)\)来区分判断。8.根据权利要求7所述的在异构数据库之间迁移数据对象的方法,其特征在于,步骤s2中包括子步骤s25.目标sql语句及编程语言实体类的生成,通过代码中对模版的填充构建
出建表语句以及建立索引的语句;编程语言实体类的生成首先通过配置文件指定编程语言,接着根据编程语言加载对应的模版,然后使用目标表字段实体类进行填充,最后生成编程语言实体类。9.一种在异构数据库之间迁移数据对象的系统,用于实施根据权利要求1-8任一项所述的方法,其特征在于,所述系统包括应用层、引擎层和存储层;所述应用层为软件使用者提供软件界面以及sdk软件开发应用包的接入方式;所述引擎层用于读取使用者的配置信息,将待迁移数据库的数据对象解析成通用数据对象模型,再将通用数据对象模型生成目标数据库语言或者生成编程语言实体类;所述存储层用于将目标数据库语言或者编程语言实体类写入到目标数据库中,并生成日志文件,记录迁移的信息。10.根据权利要求9所述的在异构数据库之间迁移数据对象的系统,其特征在于,通过所述应用层、引擎层和存储层的配合协作使得程序通过读取配置中数据库的种类选择对应的驱动器,通过配置的链接连接到指定数据库,通过读取数据库的方式,将数据对象转换成通用的模型,最后再转换成目标数据对象。

技术总结
本发明公开了一种在异构数据库之间迁移数据对象的方法及系统,所述方法应用于具有应用层、引擎层和存储层的应用软件,包括以下步骤:S1.通过应用层为应用软件使用者提供软件界面和SDK软件开发应用包的接入方式;S2.通过引擎层读取使用者的配置信息,将待迁移数据库中的数据对象解析成通用数据对象模型,再将通用数据对象模型生成目标数据库语言或者生成编程语言实体类;S3.通过存储层将目标数据库语言或者编程语言实体类写入到目标数据库中,并生成日志文件。本方法和系统能够快速便捷的实现异构数据库之间数据对象的迁移,并支持生成SQL语句以及主流编程语言的实体类。成SQL语句以及主流编程语言的实体类。成SQL语句以及主流编程语言的实体类。


技术研发人员:刘名卓 李锦 刘莹 张金银
受保护的技术使用者:杭州比智科技有限公司
技术研发日:2022.04.28
技术公布日:2022/8/5
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1