数据库信息的获取方法、装置、存储介质及电子装置制造方法及图纸

技术编号:22531813 阅读:30 留言:0更新日期:2019-11-13 09:07
本发明专利技术提供了一种数据库信息的获取方法、装置、存储介质及电子装置,其中,该方法包括:通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述元数据库中所包括的目标数据库的信息,其中,所述目标数据库为源数据的元数据库;通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息;通过所述目标JDBC连接执行第三SQL获取所述目标数据库表中包括的字段信息。通过本发明专利技术,解决了相关技术中存在的无法直接访问元数据库以及存在访问安全风险的问题,达到在无需直接访问元数据库的情况下获取数据源的各种元数据信息的目的,进而避免了直接访问元数据库所导致的访问安全风险的效果。

Methods, devices, storage media and electronic devices for obtaining database information

The invention provides a database information acquisition method, device, storage medium and electronic device, wherein the method comprises: acquiring the information of the target database included in the Metadatabase by executing the first structured query language SQL through the target JDBC connection established with the target database, wherein the target database is the Metadatabase of the source data; and The target JDBC connection executes the second SQL to obtain the information of the target database table in the target database, and the third SQL to obtain the field information included in the target database table through the target JDBC connection. Through the invention, the problems of not being able to directly access the metabase and having access to the security risk in the related technology are solved, the purpose of obtaining various metadata information of the data source without directly accessing the metabase is achieved, and the effect of access security risk caused by directly accessing the metabase is avoided.

【技术实现步骤摘要】
数据库信息的获取方法、装置、存储介质及电子装置
本专利技术涉及通信领域,具体而言,涉及一种数据库信息的获取方法、装置、存储介质及电子装置。
技术介绍
现有的hive、mysql、oracle、postgres等关系型数据库元数据的采集方法大都是通过直接访问元数据库的核心库-元数据库,来查询各种保存元数据信息的数据库表来提取出各数据源的元数据信息。然而,元数据库的安全性要求是很高的,一般访问者是没有权限直接访问元数据库的,此外,对元数据库的直接访问可能会造成严重的安全风险。针对相关技术中存在的无法直接访问元数据库以及存在访问安全风险的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种数据库信息的获取方法、装置、存储介质及电子装置,以至少解决相关技术中存在的无法直接访问元数据库以及存在访问安全风险的问题。根据本专利技术的一个实施例,提供了一种数据库信息的获取方法,包括:通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述目标数据库的信息,其中,所述目标数据库为源数据的元数据库;通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息;通过所述目标JDBC连接执行第三SQL获取所述目标数据库表中包括的字段信息。可选地,在通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述元数据库中所包括的目标数据库的信息之前,所述方法还包括:与所述目标数据库之间建立所述目标JDBC连接。可选地,所述方法包括以下至少之一:通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述元数据库中所包括的目标数据库的信息包括:通过与目标数据库之间建立的目标JDBC连接执行showdatabases的SQL语句来获取所述元数据库中所包括的所有的目标数据库的信息;通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息包括:通过所述目标JDBC连接执行showtables的SQL语句来获取所述目标数据库中的所有的目标数据库表的信息;通过所述目标JDBC连接执行第三SQL获取所述目标数据库表中包括的字段信息包括:通过所述目标JDBC连接执行descformattedtablename的SQL语句来获取所述目标数据库表中包括的字段信息。可选地,在通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息之前,所述方法还包括:通过所述目标JDBC连接将连接参数中统一资源定位符URL所指示的数据库变更为所述目标数据库。可选地,所述字段信息包括:字段名称、字段类型、字段备注、字段长度、字段索引类型。根据本专利技术的另一个实施例,还提供了一种数据库信息的获取装置,包括:第一获取模块,用于通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述目标数据库的信息,其中,所述目标数据库为源数据的元数据库;第二获取模块,用于通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息;第三获取模块,用于通过所述目标JDBC连接执行第三SQL获取所述目标数据库表中包括的字段信息。可选地,所述装置还包括:建立模块,用于在通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述元数据库中所包括的目标数据库的信息之前,与所述目标数据库之间建立所述目标JDBC连接。可选地,所述第一获取模块用于:通过与目标数据库之间建立的目标JDBC连接执行showdatabases的SQL语句来获取所述元数据库中所包括的所有的目标数据库的信息。可选地,所述第二获取模块用于:通过所述目标JDBC连接执行showtables的SQL语句来获取所述目标数据库中的所有的目标数据库表的信息。可选地,所述第三获取模块用于:通过所述目标JDBC连接执行descformattedtablename的SQL语句来获取所述目标数据库表中包括的字段信息。根据本专利技术的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。根据本专利技术的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。通过本专利技术,由于不通过直接访问数据源的元数据库,而是通过对特定的SQL返回结果的解析来间接获取数据源的各种元数据信息,因此,可以解决相关技术中存在的无法直接访问元数据库以及存在访问安全风险的问题,达到在无需直接访问元数据库的情况下获取数据源的各种元数据信息的目的,进而避免了直接访问元数据库所导致的访问安全风险的效果。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是本专利技术实施例的一种数据库信息的获取方法的计算机终端的硬件结构框图;图2是根据本专利技术实施例的数据库信息的获取方法的流程图;图3是根据本专利技术实施例的采用JDBC配合SQL解析的方式进行元数据采集的方法流程图;图4是根据本专利技术实施例的数据库信息的获取装置的结构框图。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本专利技术实施例的一种数据库信息的获取方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本专利技术实施例中的数据库信息的获取方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Net本文档来自技高网...

【技术保护点】
1.一种数据库信息的获取方法,其特征在于,包括:通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述目标数据库的信息,其中,所述目标数据库为源数据的元数据库;通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息;通过所述目标JDBC连接执行第三SQL获取所述目标数据库表中包括的字段信息。

【技术特征摘要】
1.一种数据库信息的获取方法,其特征在于,包括:通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述目标数据库的信息,其中,所述目标数据库为源数据的元数据库;通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息;通过所述目标JDBC连接执行第三SQL获取所述目标数据库表中包括的字段信息。2.根据权利要求1所述的方法,其特征在于,在通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述元数据库中所包括的目标数据库的信息之前,所述方法还包括:与所述目标数据库之间建立所述目标JDBC连接。3.根据权利要求1所述的方法,其特征在于,包括以下至少之一:通过与目标数据库之间建立的目标JDBC连接执行第一结构化查询语言SQL来获取所述元数据库中所包括的目标数据库的信息包括:通过与目标数据库之间建立的目标JDBC连接执行showdatabases的SQL语句来获取所述元数据库中所包括的所有的目标数据库的信息;通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息包括:通过所述目标JDBC连接执行showtables的SQL语句来获取所述目标数据库中的所有的目标数据库表的信息;通过所述目标JDBC连接执行第三SQL获取所述目标数据库表中包括的字段信息包括:通过所述目标JDBC连接执行descformattedtablename的SQL语句来获取所述目标数据库表中包括的字段信息。4.根据权利要求3所述的方法,其特征在于,在通过所述目标JDBC连接执行第二SQL获取所述目标数据库中的目标数据库表的信息之前,所述方法还包括:通过所述目标JDBC连接将连接参数中统一资源定位符URL所指示的数据库变更为所述目标数据库。5.根据权利要...

【专利技术属性】
技术研发人员:宋柯
申请(专利权)人:北京明略软件系统有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1