全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211009316.8 (22)申请日 2022.08.22 (71)申请人 浪潮软件股份有限公司 地址 271000 山东省泰安市东 岳大街527号 浪潮科技园 (72)发明人 赵绍祥 盖家铭 张连超 周双  (74)专利代理 机构 济南信达专利事务所有限公 司 37100 专利代理师 冯春连 (51)Int.Cl. G06F 16/2452(2019.01) G06F 16/25(2019.01) (54)发明名称 一种基于jDialect的多源异构SQL执行方法 及工具 (57)摘要 本发明公开一种基于jDialect的多源异构 SQL执行方法, 涉及计算机技术领域, 包括: 梳理 不同类型数据库中字段类型之间的差异, 形成数 据库字段类型差异库; 梳理不同类型数据库中函 数之间的差异, 形成数据库函数差异库; 获取要 传入的SQL语句、 数据库连接参数、 源数据库类 型、 目标数据库类型; 数据库方言工具jDialect 将要传入的SQL语句翻译成目标数据库能够识别 的SQL语句, 数据库 SQL执行器在目标数据库上执 行翻译后的SQL语句, 并返回结果。 本发明还公开 一种基于jDialect的多源异构SQL执行工具, 其 与前述方法相结合, 解决了不同数据库之间方言 差异带来的开发复杂度高的问题。 权利要求书2页 说明书4页 附图1页 CN 115422230 A 2022.12.02 CN 115422230 A 1.一种基于jDialect的多源异构 SQL执行方法, 其特 征在于,包括如下步骤: 梳理不同类型 数据库中字段类型之间的差异, 形成数据库字段类型差异库; 梳理不同类型 数据库中函数之间的差异, 形成数据库函数差异库; 获取要传入的SQ L语句、 数据库连接参数、 源数据库类型、 目标 数据库类型; 数据库方言工具jDi alect将要传入的SQL语句翻 译成目标数据库能够识别的SQL语句, 数据库SQ L执行器在目标 数据库上 执行翻译后的SQ L语句, 并返回结果。 2.根据权利要求1所述的一种基于jDialect的多源异构SQL执行方法, 其特征在于, 不 同类型数据库中字段类型之间的差异包括类型关键词、 类型 所支持最大长度的差异; 不同类型 数据库中函数之间的差异包括 函数名称和参数的差异。 3.根据权利要求1所述的一种基于jDialect的多源异构SQL执行方法, 其特征在于, 获 取要传入的SQL语句、 数据库连接参数、 源 数据库类型、 目标数据库类型之前, 将数据库字段 类型差异库、 数据库函数差异库、 数据源信息预 先加载至内存数据库。 4.根据权利要求1所述的一种基于jDialect的多源异构SQL执行方法, 其特征在于, 数 据库方言工具jDialect将要传入的SQL语句 翻译成目标数据库能够识别的SQL语句, 具体过 程为: 数据库方言工具jDialect根据源数据库类型和目标数据库类型, 首先加载相应的数据 库连接驱动, 随后加载相应的数据库方言; 基于加载的数据库方言, 数据库方言工具jDialect从数据库字段类型差异库中获取与 传入SQL语句相应的字段类型, 从数据库函数差异库中获取与传入SQL语句匹配的函数, 并 通过解析SQL语句中的关键词, 将SQL语句中源 数据库方言的关键词替换为目标数据库方言 的对应关键词。 5.根据权利要求1所述的一种基于jDialect的多源异构SQL执行方法, 其特征在于, 数 据库方言工具jDialect将要传入的SQL语句翻译成DDL类型或DML类型的SQL语句, 数据库 SQL执行器在目标 数据库上 执行DDL类型或DML类型的SQ L语句, 生成需要的数据库表。 6.一种基于jDialect的多源异构 SQL执行工具, 其特 征在于, 其结构包括: 字段类型差异模块, 用于梳理不同类型数据库中字段类型之间的差异, 形成数据库字 段类型差异库; 函数差异模块, 用于 梳理不同类型 数据库中函数之间的差异, 形成数据库函数差异库; 获取模块, 用于获取要传入的SQL语句、 数据库连接参数、 源数据库类型、 目标数据库类 型; 翻译执行模块, 用于利用数据库方言工具jDialect将要传入的SQL语句翻译成目标数 据库能够识别的SQL语句, 还用于利用数据库SQL执行器在目标数据库上执行翻译后的SQL 语句, 并返回结果。 7.根据权利要求6所述的一种基于jDialect的多源异构SQL执行工具, 其特征在于, 不 同类型数据库中字段类型之间的差异包括类型关键词、 类型 所支持最大长度的差异; 不同类型 数据库中函数之间的差异包括 函数名称和参数的差异。 8.根据权利要求6所述的一种基于jDialect的多源异构SQL执行工具, 其特征在于, 所 述获取模块 获取要传 入的SQL语句、 数据库连接参数、 源数据库类型、 目标数据库类型之前, 使用预处理模块, 将数据库字段类型差异库、 数据库函数差异库、 数据源信息预先加载至内权 利 要 求 书 1/2 页 2 CN 115422230 A 2存数据库。 9.根据权利要求6所述的一种基于jDialect的多源异构SQL执行工具, 其特征在于, 所 述翻译执行模块利用数据库方言工具jDialect将要传入的SQL语句 翻译成目标数据库能够 识别的SQ L语句, 具体过程 为: 数据库方言工具jDialect根据源数据库类型和目标数据库类型, 首先加载相应的数据 库连接驱动, 随后加载相应的数据库方言; 基于加载的数据库方言, 数据库方言工具jDialect从数据库字段类型差异库中获取与 传入SQL语句相应的字段类型, 从数据库函数差异库中获取与传入SQL语句匹配的函数, 并 通过解析SQL语句中的关键词, 将SQL语句中源 数据库方言的关键词替换为目标数据库方言 的对应关键词。 10.根据权利要求6所述的一种基于jDi alect的多源异构SQL执行工具, 其特征在于, 所 述翻译执行模块利用数据库方言工具jDialect将要传入的SQL语句翻译成DDL类型或DML类 型的SQL语句, 所述翻译执行模块利用数据库SQL执行器在目标数据库上执行DDL类型或DML 类型的SQ L语句, 生成需要的数据库表。权 利 要 求 书 2/2 页 3 CN 115422230 A 3

PDF文档 专利 一种基于jDialect的多源异构SQL执行方法及工具

文档预览
中文文档 8 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共8页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于jDialect的多源异构SQL执行方法及工具 第 1 页 专利 一种基于jDialect的多源异构SQL执行方法及工具 第 2 页 专利 一种基于jDialect的多源异构SQL执行方法及工具 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-24 01:01:45上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。