CN109753533A - 一种多源关系型数据库客户端开发方法及装置 - Google Patents

一种多源关系型数据库客户端开发方法及装置 Download PDF

Info

Publication number
CN109753533A
CN109753533A CN201811626141.9A CN201811626141A CN109753533A CN 109753533 A CN109753533 A CN 109753533A CN 201811626141 A CN201811626141 A CN 201811626141A CN 109753533 A CN109753533 A CN 109753533A
Authority
CN
China
Prior art keywords
database
tree view
sql
navigation tree
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811626141.9A
Other languages
English (en)
Inventor
张清立
李允强
李雪
卢九樨
金正皓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING BONC TECHNOLOGY Co Ltd
Original Assignee
BEIJING BONC TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING BONC TECHNOLOGY Co Ltd filed Critical BEIJING BONC TECHNOLOGY Co Ltd
Priority to CN201811626141.9A priority Critical patent/CN109753533A/zh
Publication of CN109753533A publication Critical patent/CN109753533A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种多源关系型数据库客户端开发方法及装置,建立数据库导航树视图,将导航树视图作为用户访问数据库的入口进行连接关系创建、窗口界面编辑形成数据库交互界面,接收访问参数进行本地持久化存储,读取本地持久化存储的数据生成导航树视图,采用编程接口与数据库建立连接并展开导航树视图,根据数据库对象层次关系展开子树,通过元数据表获取数据库对象进行访问,根据选中的数据库结节点调用SQL编辑器,接收SQL指令对数据库进行操作,根据SQL指令类型返回对应的执行结果,对选取的数据库进行对象比较,获得数据库对象差异比较结果。能够支持同时注册各类关系型数据库,采用统一的视窗实现对数据库任意功能的操作,提高开发人员效率。

Description

一种多源关系型数据库客户端开发方法及装置
技术领域
本发明实施例涉及数据库开发技术领域,具体涉及一种多源关系型数据库客户端开发方法及装置。
背景技术
随着计算机及信息技术的迅猛发展和普及应用,行业应用系统的规模迅速扩大。行业应用系统经常采用不同的数据库,行业应用系统中的数据通常以不同形式存储,各系统采用不同类型的数据库存储数据,即数据库的数据是多源的,现阶段针对多源的跨数据库的数据加工、访问已成为开发人员日常工作。
目前,开发人员在针对跨数据库的数据加工、访问时,现有技术存在以下问题:当现场数据库种类较多时,在访问数据库时需要给每一类数据库开启一个客户端程序,占用机器资源较高。各类数据库间的数据通常存在一定的关系,不能在同一视窗内进行访问或比较,数据加工、访问过程需要不断的切换不同的客户端,数据库对象比较需要依赖人工方式,人工比较效率低,影响整体的开发进度。
发明内容
为此,本发明实施例提供一种多源关系型数据库客户端开发方法及装置,能够支持同时注册各类关系型数据库,采用统一的视窗实现对数据库任意功能的操作,提高开发人员开发效率。
为了实现上述目的,本发明的实施方式提供如下技术方案:一种多源关系型数据库客户端开发方法,包括:
1)建立数据库导航树视图,将所述导航树视图作为用户访问数据库的入口;
2)对所述导航树视图进行连接关系创建、窗口界面编辑形成数据库交互界面,接收访问参数;
3)对所述访问参数进行本地持久化存储,当客户端重启后通过读取本地持久化存储的数据加载历史连接生成导航树视图;
4)采用编程接口与数据库建立连接并展开所述导航树视图;
5)根据数据库对象层次关系展开子树,通过元数据表获取数据库对象进行访问;
6)根据选中的数据库结节点调用SQL编辑器,接收SQL指令对数据库进行操作;
7)在SQL编辑器内调用SQL执行程序,根据所述SQL指令类型返回对应的执行结果;
8)对选取的数据库进行对象比较,获得数据库对象差异比较结果。
作为多源关系型数据库客户端开发方法的优选方案,所述数据库的类型包括ORACLE、MYSQL、DB2、H2、SQL Server和HIVE中的一种或多种。
作为多源关系型数据库客户端开发方法的优选方案,所述导航树视图展开后的对象包括DB、SCHEMA、TABLE、VIEW、COLUMN和INDEX中的一种或多种。
作为多源关系型数据库客户端开发方法的优选方案,所述步骤2)中,供用户进行关系型数据库交互界面注册,当注册成功后在所述导航树视图上生成一个节点,通过所述注册界面由用户选择ORACLE、MYSQL、DB2、H2、SQL Server或HIVE数据库类型。
作为多源关系型数据库客户端开发方法的优选方案,所述步骤4)中采用标准的JDBC接口与数据库建立连接,进行数据库访问。
本发明实施例还提供一种多源关系型数据库客户端开发装置,包括:
访问入口构建模块,用于建立数据库导航树视图,将所述导航树视图作为用户访问数据库的入口;
交互模块,用于对导航树视图进行连接关系创建、窗口界面编辑形成数据库交互界面,接收访问参数;
本地存储模块,用于对访问参数进行本地持久化存储;
本地读取模块,用于当客户端重启后通过读取本地持久化存储的数据加载历史连接生成导航树视图;
连接建立模块,用于采用编程接口与数据库建立连接并展开导航树视图;
访问模块,用于根据数据库对象层次关系展开子树,通过元数据表获取数据库对象进行访问;
指令接收模块,用于根据选中的数据库结节点调用SQL编辑器接收SQL指令对数据库进行操作
结果返回模块,用于在SQL编辑器内调用SQL执行程序,根据SQL指令类型返回对应的执行结果;
数据库比较模块,用于对选取的数据库进行对象比较,获得数据库对象差异比较结果。
作为多源关系型数据库客户端开发装置的优选方案,所述数据库的类型包括ORACLE、MYSQL、DB2、H2、SQL Server和HIVE中的一种或多种。
作为多源关系型数据库客户端开发装置的优选方案,所述导航树视图展开后的对象包括DB、SCHEMA、TABLE、VIEW、COLUMN和INDEX中的一种或多种。
作为多源关系型数据库客户端开发装置的优选方案,还包括注册模块,用于供用户进行关系型数据库交互界面注册,当注册成功后在导航树视图上生成一个节点,通过所述注册界面由用户选择ORACLE、MYSQL、DB2、H2、SQL Server或HIVE数据库类型。
作为多源关系型数据库客户端开发装置的优选方案,所述连接建立模块中采用标准的JDBC接口与数据库建立连接,进行数据库访问。
本发明的实施方式具有如下优点:能够支持同时注册各类关系型数据库,采用统一的视窗实现对数据库任意功能的操作,开发人员不必再单独打开多个数据库客户端窗口,降低客户端机器内存、CPU使用资源,只需要一次配置连接信息,需要增加数据库类型只需要增加配置连接信息,在同一视窗内访问各类型数据库对象及数据,同时进行差异性比较,提高了开发人员的整体开发效率。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
图1为本发明实施例中提供的一种多源关系型数据库客户端开发方法流程图;
图2为本发明实施例中提供的一种多源关系型数据库客户端开发装置流程图;
图中:1、访问入口构建模块;2、交互模块;3、本地存储模块;4、本地读取模块;5、连接建立模块;6、访问模块;7、指令接收模块;8、结果返回模块;9、数据库比较模块;10、注册模块。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例中涉及的英文全程或缩写的具体含义如下:
SQL:Structured Query Language,结构化查询语言;
ORACLE:Oracle Database,甲骨文公司的一款关系数据库管理系统;
MYSQL:由瑞典MySQL AB公司开发的一个关系型数据库管理系统;
DB2:美国IBM公司开发的一套关系型数据库管理系统;
H2:Thomas Mueller提供的一个开源的、纯java实现的关系数据库;
SQL Server:Microsoft公司推出的关系型数据库管理系统;
HIVE:建立在Hadoop上的数据仓库基础构架;
DB:Database数据库;
SCHEMA:W3C于2001年5月发布的推荐标准,指出如何形式描述XML文档的元素;
TABLE:用于在web页面上创建表格;
VIEW:基于SQL语句的结果集的可视化的表;
COLUMN:表示垂直的单元格列;
INDEX:返回指定的行与列交叉处的单元格引用。
基于本实施例的具体方案,可以开发安装在任一类型操作系统平台。其中,适用的操作系统可以为Windows操作系统、Linux操作系统或MAC OS操作系统,本实施例对此不作具体限定。
参见图1,本发明实施例提供一种多源关系型数据库客户端开发方法,包括以下步骤:
S1:建立数据库导航树视图,将所述导航树视图作为用户访问数据库的入口;
S2:对所述导航树视图进行连接关系创建、窗口界面编辑形成数据库交互界面,接收访问参数;
S3:对所述访问参数进行本地持久化存储,当客户端重启后通过读取本地持久化存储的数据加载历史连接生成导航树视图;
S4:采用编程接口与数据库建立连接并展开所述导航树视图;
S5:根据数据库对象层次关系展开子树,通过元数据表获取数据库对象进行访问;
S6:根据选中的数据库结节点调用SQL编辑器,接收SQL指令对数据库进行操作;
S7:在SQL编辑器内调用SQL执行程序,根据所述SQL指令类型返回对应的执行结果;
S8:对选取的数据库进行对象比较,获得数据库对象差异比较结果。
多源关系型数据库客户端开发方法的一个实施例中,所述数据库的类型包括ORACLE、MYSQL、DB2、H2、SQL Server和HIVE中的一种或多种。所述导航树视图展开后的对象包括DB、SCHEMA、TABLE、VIEW、COLUMN和INDEX中的一种或多种。具体的,数据库导航树视图用于用户访问数据库的入口,支持多源关系型数据库,多源关系型数据库包含且不仅限于以下类型:ORACLE、MYSQL、DB2、H2、SQL Server、HIVE。导航树视图展开包含且不仅限于以下对象:DB、SCHEMA、TABLE、VIEW、COLUMN、INDEX。
多源关系型数据库客户端开发方法的一个实施例中,所述S2中,供用户进行关系型数据库交互界面注册,当注册成功后在所述导航树视图上生成一个节点,通过所述注册界面由用户选择ORACLE、MYSQL、DB2、H2、SQL Server或HIVE数据库类型。具体的,关系型数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。用户注册关系型数据库交互界面,注册成功在导航树上生成一个节点,注册界面由用户选择数据库类型,数据库类型包含且不仅限于以下类型ORACLE、MYSQL、DB2、H2、SQLServer、HIVE。
多源关系型数据库客户端开发方法的一个实施例中,所述S4中采用标准的JDBC接口与数据库建立连接,进行数据库访问。具体的,数据库连接采用标准JDBC接口,展开导航树需要先与数据库建立连接,采用标准的JDBC接口与数据库建立连接,进行数据库访问。JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序
参见图2,本发明实施例还提供一种多源关系型数据库客户端开发装置,包括:
访问入口构建模块1,用于建立数据库导航树视图,将所述导航树视图作为用户访问数据库的入口;
交互模块2,用于对导航树视图进行连接关系创建、窗口界面编辑形成数据库交互界面,接收访问参数;
本地存储模块3,用于对访问参数进行本地持久化存储;
本地读取模块4,用于当客户端重启后通过读取本地持久化存储的数据加载历史连接生成导航树视图;
连接建立模块5,用于采用编程接口与数据库建立连接并展开导航树视图;
访问模块6,用于根据数据库对象层次关系展开子树,通过元数据表获取数据库对象进行访问;
指令接收模块7,用于根据选中的数据库结节点调用SQL编辑器接收SQL指令对数据库进行操作
结果返回模块8,用于在SQL编辑器内调用SQL执行程序,根据SQL指令类型返回对应的执行结果;
数据库比较模块9,用于对选取的数据库进行对象比较,获得数据库对象差异比较结果。
多源关系型数据库客户端开发装置的一个实施例中,所述数据库的类型包括ORACLE、MYSQL、DB2、H2、SQL Server和HIVE中的一种或多种。所述导航树视图展开后的对象包括DB、SCHEMA、TABLE、VIEW、COLUMN和INDEX中的一种或多种。
多源关系型数据库客户端开发装置的一个实施例中,还包括注册模块10,用于供用户进行关系型数据库交互界面注册,当注册成功后在导航树视图上生成一个节点,通过所述注册界面由用户选择ORACLE、MYSQL、DB2、H2、SQL Server或HIVE数据库类型。
多源关系型数据库客户端开发装置的一个实施例中,所述连接建立模块中采用标准的JDBC接口与数据库建立连接,进行数据库访问。
本发明的实施方式通过建立数据库导航树视图,将导航树视图作为用户访问数据库的入口,对导航树视图进行连接关系创建、窗口界面编辑形成数据库交互界面,接收访问参数,对访问参数进行本地持久化存储,当客户端重启后通过读取本地持久化存储的数据加载历史连接生成导航树视图,采用编程接口与数据库建立连接并展开导航树视图,根据数据库对象层次关系展开子树,通过元数据表获取数据库对象进行访问,根据选中的数据库结节点调用SQL编辑器,接收SQL指令对数据库进行操作,在SQL编辑器内调用SQL执行程序,根据SQL指令类型返回对应的执行结果,对选取的数据库进行对象比较,获得数据库对象差异比较结果。本发明实施例能够支持同时注册各类关系型数据库,采用统一的视窗实现对数据库任意功能的操作,开发人员不必再单独打开多个数据库客户端窗口,降低客户端机器内存、CPU使用资源,只需要一次配置连接信息,需要增加数据库类型只需要增加配置连接信息,在同一视窗内访问各类型数据库对象及数据,同时进行差异性比较,提高了开发人员的整体开发效率。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。

Claims (10)

1.一种多源关系型数据库客户端开发方法,其特征在于,包括:
1)建立数据库导航树视图,将所述导航树视图作为用户访问数据库的入口;
2)对所述导航树视图进行连接关系创建、窗口界面编辑形成数据库交互界面,接收访问参数;
3)对所述访问参数进行本地持久化存储,当客户端重启后通过读取本地持久化存储的数据加载历史连接生成导航树视图;
4)采用编程接口与数据库建立连接并展开所述导航树视图;
5)根据数据库对象层次关系展开子树,通过元数据表获取数据库对象进行访问;
6)根据选中的数据库结节点调用SQL编辑器,接收SQL指令对数据库进行操作;
7)在SQL编辑器内调用SQL执行程序,根据所述SQL指令类型返回对应的执行结果;
8)对选取的数据库进行对象比较,获得数据库对象差异比较结果。
2.根据权利要求1所述的一种多源关系型数据库客户端开发方法,其特征在于,所述数据库的类型包括ORACLE、MYSQL、DB2、H2、SQL Server和HIVE中的一种或多种。
3.根据权利要求1所述的一种多源关系型数据库客户端开发方法,其特征在于,所述导航树视图展开后的对象包括DB、SCHEMA、TABLE、VIEW、COLUMN和INDEX中的一种或多种。
4.根据权利要求1所述的一种多源关系型数据库客户端开发方法,其特征在于,所述步骤2)中,供用户进行关系型数据库交互界面注册,当注册成功后在所述导航树视图上生成一个节点,通过所述注册界面由用户选择ORACLE、MYSQL、DB2、H2、SQL Server或HIVE数据库类型。
5.根据权利要求1所述的一种多源关系型数据库客户端开发方法,其特征在于,所述步骤4)中采用标准的JDBC接口与数据库建立连接,进行数据库访问。
6.一种多源关系型数据库客户端开发装置,其特征在于,包括:
访问入口构建模块,用于建立数据库导航树视图,将所述导航树视图作为用户访问数据库的入口;
交互模块,用于对导航树视图进行连接关系创建、窗口界面编辑形成数据库交互界面,接收访问参数;
本地存储模块,用于对访问参数进行本地持久化存储;
本地读取模块,用于当客户端重启后通过读取本地持久化存储的数据加载历史连接生成导航树视图;
连接建立模块,用于采用编程接口与数据库建立连接并展开导航树视图;
访问模块,用于根据数据库对象层次关系展开子树,通过元数据表获取数据库对象进行访问;
指令接收模块,用于根据选中的数据库结节点调用SQL编辑器接收SQL指令对数据库进行操作
结果返回模块,用于在SQL编辑器内调用SQL执行程序,根据SQL指令类型返回对应的执行结果;
数据库比较模块,用于对选取的数据库进行对象比较,获得数据库对象差异比较结果。
7.根据权利要求6所述的一种多源关系型数据库客户端开发装置,其特征在于,所述数据库的类型包括ORACLE、MYSQL、DB2、H2、SQL Server和HIVE中的一种或多种。
8.根据权利要求6所述的一种多源关系型数据库客户端开发装置,其特征在于,所述导航树视图展开后的对象包括DB、SCHEMA、TABLE、VIEW、COLUMN和INDEX中的一种或多种。
9.根据权利要求6所述的一种多源关系型数据库客户端开发装置,其特征在于,还包括注册模块,用于供用户进行关系型数据库交互界面注册,当注册成功后在导航树视图上生成一个节点,通过所述注册界面由用户选择ORACLE、MYSQL、DB2、H2、SQL Server或HIVE数据库类型。
10.根据权利要求6所述的一种多源关系型数据库客户端开发装置,其特征在于,所述连接建立模块中采用标准的JDBC接口与数据库建立连接,进行数据库访问。
CN201811626141.9A 2018-12-28 2018-12-28 一种多源关系型数据库客户端开发方法及装置 Pending CN109753533A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811626141.9A CN109753533A (zh) 2018-12-28 2018-12-28 一种多源关系型数据库客户端开发方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811626141.9A CN109753533A (zh) 2018-12-28 2018-12-28 一种多源关系型数据库客户端开发方法及装置

Publications (1)

Publication Number Publication Date
CN109753533A true CN109753533A (zh) 2019-05-14

Family

ID=66404381

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811626141.9A Pending CN109753533A (zh) 2018-12-28 2018-12-28 一种多源关系型数据库客户端开发方法及装置

Country Status (1)

Country Link
CN (1) CN109753533A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113176876A (zh) * 2021-04-23 2021-07-27 网易(杭州)网络有限公司 数据读写的方法、装置和电子设备
CN114217899A (zh) * 2021-12-15 2022-03-22 平安国际智慧城市科技股份有限公司 数据持久化方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110030A (zh) * 2007-08-23 2008-01-23 南京联创科技股份有限公司 基于java的数据库持久层的开发方法
US7774198B2 (en) * 2006-10-06 2010-08-10 Xerox Corporation Navigation system for text
CN108132987A (zh) * 2017-12-14 2018-06-08 浙江航天恒嘉数据科技有限公司 一种数据查询系统及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774198B2 (en) * 2006-10-06 2010-08-10 Xerox Corporation Navigation system for text
CN101110030A (zh) * 2007-08-23 2008-01-23 南京联创科技股份有限公司 基于java的数据库持久层的开发方法
CN108132987A (zh) * 2017-12-14 2018-06-08 浙江航天恒嘉数据科技有限公司 一种数据查询系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZWY198854: "WEB数据库课程设计 导航树菜单及权限分配", 《HTTPS://WENKU.BAIDU.COM/VIEW/657403FDF705CC17552709A2.HTML》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113176876A (zh) * 2021-04-23 2021-07-27 网易(杭州)网络有限公司 数据读写的方法、装置和电子设备
CN113176876B (zh) * 2021-04-23 2023-08-11 网易(杭州)网络有限公司 数据读写的方法、装置和电子设备
CN114217899A (zh) * 2021-12-15 2022-03-22 平安国际智慧城市科技股份有限公司 数据持久化方法、装置、电子设备及存储介质
CN114217899B (zh) * 2021-12-15 2023-10-17 深圳平安智慧医健科技有限公司 数据持久化方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN110291517B (zh) 图数据库中的查询语言互操作性
CN107402992B (zh) 一种分布式NewSQL数据库系统和全文检索建立方法
US11468103B2 (en) Relational modeler and renderer for non-relational data
CN106202207B (zh) 一种基于HBase-ORM的索引及检索系统
US8145685B2 (en) Object relational mapping layer
US6240422B1 (en) Object to relational database mapping infrastructure in a customer care and billing system
US8620903B2 (en) Database distribution system and methods for scale-out applications
CN107038207A (zh) 一种数据查询方法、数据处理方法及装置
US10733172B2 (en) Method and computing device for minimizing accesses to data storage in conjunction with maintaining a B-tree
US10394805B2 (en) Database management for mobile devices
US7103613B2 (en) Object oriented query root leaf inheritance to relational join translator method, system, article of manufacture, and computer program product
CN106294695A (zh) 一种面向实时大数据搜索引擎的实现方法
CN108874924A (zh) 搜索服务的创建方法、装置及计算机可读存储介质
CN108959538A (zh) 全文检索系统及方法
Khan et al. Predictive performance comparison analysis of relational & NoSQL graph databases
US8407713B2 (en) Infrastructure of data summarization including light programs and helper steps
US7689625B2 (en) Taxonomy object modeling
CN112417225A (zh) 一种多源异构数据的联合查询方法与系统
KR101955376B1 (ko) 비공유 아키텍처 기반의 분산 스트림 처리 엔진에서 관계형 질의를 처리하는 방법, 이를 수행하기 위한 기록 매체 및 장치
CN109753533A (zh) 一种多源关系型数据库客户端开发方法及装置
CN104794567B (zh) 一种基于HBase的传染病数据管理方法
Joldzic et al. The impact of cluster characteristics on HiveQL query optimization
US20060282437A1 (en) Apparatus, system, and method for ordered processing of a hierarchical data structure according to a data source
US9135302B2 (en) Query rewrite with a nested materialized view
Reniers et al. Schema design support for semi-structured data: Finding the sweet spot between NF and De-NF

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190514