CN112597171B - 表格关系可视化方法、装置、电子设备及存储介质 - Google Patents

表格关系可视化方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN112597171B
CN112597171B CN202011645089.9A CN202011645089A CN112597171B CN 112597171 B CN112597171 B CN 112597171B CN 202011645089 A CN202011645089 A CN 202011645089A CN 112597171 B CN112597171 B CN 112597171B
Authority
CN
China
Prior art keywords
preset
original frame
source code
file
relationship
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.)
Active
Application number
CN202011645089.9A
Other languages
English (en)
Other versions
CN112597171A (zh
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.)
Ping An Bank Co Ltd
Original Assignee
Ping An Bank 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 Ping An Bank Co Ltd filed Critical Ping An Bank Co Ltd
Priority to CN202011645089.9A priority Critical patent/CN112597171B/zh
Publication of CN112597171A publication Critical patent/CN112597171A/zh
Application granted granted Critical
Publication of CN112597171B publication Critical patent/CN112597171B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/26Visual data mining; Browsing structured data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及数据展示技术,揭露了一种表格关系可视化方法,包括:获取原始框架,并利用所述原始框架生成预设数据库中表格的配置文件,其中,所述配置文件中包括源码查询语句,对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中,利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,并根据所述表格关联关系生成预设格式文件,对所述预设格式文件进行解析,得到表格关系图。此外,本发明还涉及区块链技术,所述表格关系图可存储在区块链的节点中。本发明还提出一种表格关系可视化装置、电子设备以及计算机可读存储介质。本发明可以解决表格之间无法自动生成可视化E‑R图的问题。

Description

表格关系可视化方法、装置、电子设备及存储介质
技术领域
本发明涉及数据展示技术领域,尤其涉及一种表格关系可视化方法、装置、电子设备及计算机可读存储介质。
背景技术
大数据背景下,数据规模急剧扩大、数据形式多样、对数据应用的要求也日益提高,这给传统数据库技术带来了巨大的挑战。数据一般存储在数据库的表格之中,然而表格之间关联关系复杂,很多表格都是上游系统的表格数据,通过hadoop卸载数据到下游系统中。现有技术下,为了表示表格之间的关联关系,采用E-R图(Entity RelationshipDiagram,实体-联系图)进行展示。然而目前市面上主要的E-R图自动生成工具都是使用客户端工具自动生成,需要数据库自身的表格有主外键关系,或可额外手动指定表格之间的外键关系。现有技术的弊端是很多场景中表格与表格之间并没有主外键关系,市面上并未有基于源码中SQL的动态生成可视化E-R图的方法。
发明内容
本发明提供一种表格关系可视化方法、装置及计算机可读存储介质,其主要目的在于解决表格之间无法自动生成可视化E-R图的问题。
为实现上述目的,本发明提供的一种表格关系可视化方法,包括:
获取原始框架,并利用所述原始框架生成预设数据库中表格的配置文件,其中,所述配置文件中包括源码查询语句;
对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中;
利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,并根据所述表格关联关系生成预设格式文件;
对所述预设格式文件进行解析,得到表格关系图。
可选地,所述利用所述原始框架生成预设数据库中表格的配置文件,包括:
根据预设的业务场景将所述原始框架与所述预设数据库相关联;
利用预设的软件系统提取所述业务场景下所述原始框架与所述预设数据库相关联的源码查询语句,汇总所述源码查询语句得到所述配置文件。
可选地,所述对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中,包括:
获取预设的嵌入式数据库,将所述原始框架与所述嵌入式数据库模拟连接;
调用所述原始框架中的预设文件包,根据所述预设文件包完成模拟调用,并将所述配置文件中的所有源码查询语句存储在缓存中。
可选地,所述利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,包括:
利用预设的查询语句解释器将所述源码查询语句解析成多个查询语句类别;
提取所述查询语句类别下的字段,根据所述字段确定所述表格关联关系。
可选地,所述提取所述查询语句类别下的字段,根据所述字段确定所述表格关联关系,包括:
利用预设的语言处理算法对所述字段进行分词处理,并除去停用词,得到关键字段;
根据预设的关联条件规则及所述关键字段得到表格关联关系。
可选地,所述对所述预设格式文件进行解析,得到表格关系图,包括:
利用所述原始框架将所述预设格式文件转化为开发格式;
利用预设的语言协议将所述开发格式转化为表格关系图。
可选地,所述利用预设的语言协议将所述开发格式转化为表格关系图,包括:
利用所述预设的语言协议提取所述表格关联关系对应的表格;
以所述表格作为实体,根据所述表格的类型确定属性,并以所述表格关联关系作为关系,生成所述表格关系图。
为了解决上述问题,本发明还提供一种表格关系可视化装置,所述装置包括:
表格配置模块,用于获取原始框架,并利用所述原始框架生成预设数据库中表格的配置文件,其中,所述配置文件中包括源码查询语句;
模拟连接模块,用于对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中;
语句解析模块,用于利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,并根据所述表格关联关系生成预设格式文件;
关系图生成模块,用于对所述预设格式文件进行解析,得到表格关系图。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现上述所述的表格关系可视化方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个指令,所述至少一个指令被电子设备中的处理器执行以实现上述所述的表格关系可视化方法。
本发明利用所述原始框架生成预设数据库中表格的配置文件,对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中,同时利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,不需要表格与表格之间有主外键关系,可以直接基于所述源码查询语句得到表格之间的关联关系,进而根据所述关联关系对表格进行可视化。因此本发明提出的表格关系可视化方法、装置、电子设备及计算机可读存储介质,可以解决表格之间无法自动生成可视化E-R图的问题。
附图说明
图1为本发明一实施例提供的表格关系可视化方法的流程示意图;
图2为图1中其中一个步骤的详细实施流程示意图;
图3为图1中另一个步骤的详细实施流程示意图;
图4为图1中另一个步骤的详细实施流程示意图;
图5为图1中另一个步骤的详细实施流程示意图;
图6为本发明一实施例提供的表格关系可视化装置的功能模块图;
图7为本发明一实施例提供的实现所述表格关系可视化方法的电子设备的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本申请实施例提供一种表格关系可视化方法。所述表格关系可视化方法的执行主体包括但不限于服务端、终端等能够被配置为执行本申请实施例提供的该方法的电子设备中的至少一种。换言之,所述表格关系可视化方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。
参照图1所示,为本发明一实施例提供的表格关系可视化方法的流程示意图。在本实施例中,所述表格关系可视化方法包括:
S1、获取原始框架,并利用所述原始框架生成预设数据库中表格的配置文件,其中,所述配置文件中包括源码查询语句。
本发明实施例中,所述原始框架可以为Mybatis框架,所述Mybatis框架是一款持久层框架,支持定制化查询语句(SQL)、存储过程以及高级映射等。所述预设数据库可以为关系型数据库Oracle,SQLServer等。所述表格可以是存储任何数据的表格,比如,在银行业务场景中,所述表格包括:用户信息表、业务员备注表、代理人活动组织审批表、晨夕会会议主题表、问卷主表、问卷层级表、问卷问题配置表及问卷答案配置表等。
参照图2所示,本发明其中一个实施例中,所述利用所述原始框架生成预设数据库中表格的配置文件,包括:
S10、根据预设的业务场景将所述原始框架与所述预设数据库相关联;
S11、利用预设的软件系统提取所述业务场景下所述原始框架与所述预设数据库相关联的源码查询语句,汇总所述源码查询语句得到所述配置文件。
其中,所述预设的软件系统可以为JAVA软件系统,所述JAVA软件系统在各个业务场景下,会调用不同的数据库,并且每个业务场景下都会有不同的源码查询语句。所述源码查询语句可以为SQL语句,所述SQL语句允许用户简明扼要地声明需要的业务逻辑,SQL属于设定式语言,只需将需求表达清楚即可,不需要了解具体做法;SQL可优化,内置多种查询优化器,多种查询优化器可为SQL翻译出最优执行计划。
详细地,所述配置文件可以为xml(eXtensible Markup Language,可扩展标记语言)格式的文件,所述xml格式是一种简单的数据存储结构,xml格式的简单使其易于在任何应用程序中读写数据,这使xml很快成为数据交换的唯一公共语言,不同的应用软件都支持这种xml数据交换格式,意味着程序可以更容易的与Windows、Mac OS,Linux以及其他平台下产生的信息结合,然后可以很容易加载xml数据到程序中并分析,并以xml格式输出结果。比如,所述JAVA软件系统将不同业务场景下的SQL语句组合拼装成配置文件mybatis.xml。
本发明实施通过生成所述配置文件,便于解析及传输,减低了对计算机资源的占用。
S2、对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中。
详细地,参照图3所示,所述S2包括:
S20、获取预设的嵌入式数据库,将所述原始框架与所述嵌入式数据库模拟连接;
S21、调用所述原始框架中的预设文件包,根据所述预设文件包完成模拟调用,并将所述配置文件中的所有源码查询语句存储在缓存中。
其中,所述预设的嵌入式数据库可以为H2数据库,所述H2数据库是一个Java编写的关系型数据库,它可以被嵌入Java应用程序中使用,或者作为一个单独的数据库服务器运行。H2主要有如下三个用途:第一个用途,也是最常使用的用途就在于可以同结合不同的应用程序打包在一起发布,这样可以非常方便地存储少量结构化数据;第二个用途是用于单元测试。启动速度快,而且可以关闭持久化功能,每一个用例执行完随即还原到初始状态。第三个用途是作为缓存,即当做内存数据库,缓存一些不经常变化但需要频繁访问的数据,比如字典表、权限表。本发明实施例中,为了对所述配置文件中的源码查询语句进行执行,需要有本地数据库(即H2数据库)进行连接,所述H2数据库是一个空的.db文件即可。所述预设文件包,可以为所述原始框架中的相应JAR(Java ARchive,Java归档)文件包,所述JAR文件包以流行的ZIP文件格式为基础,与ZIP文件不同的是,JAR文件包不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可直接进行调用。
进一步地,本发明实施通过对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中,不需要存储在关系型数据库中,大大降低了对存储空间的占用。
S3、利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,并根据所述表格关联关系生成预设格式文件。
本发明实施例中,所述预设格式可以为JSON(JavaScript Object Notation,JS对象简谱)格式,通过调用JavaScript库(如jQuery库)中的格式转化函数将所述表格关联关系转化为JSON格式的数据,并汇总所有JSON格式的数据得到所述预设格式文件。所述JSON格式是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据,易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。本发明实施例中,所述JSON格式文件可以为{"id1":"sql1","id2":"sql2","id3":"sql3"...}。
详细地,参照图4所示,所述利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,包括:
S30、利用预设的查询语句解释器将所述源码查询语句解析成多个查询语句类别;
S31、提取所述查询语句类别下的字段,根据所述字段确定所述表格关联关系。
其中,所述预设的查询语句解释器可以为Jsqlparser解释器,所述Jsqlparser解释器可以将不同的源码查询语句解析成相应的类别。比如,查询SQL会解析成查询类(select)。所述查询类包括表名、字段名及查询函数等。
进一步地,所述提取所述查询语句类别下的字段,根据所述字段确定所述表格关联关系,包括:
利用预设的语言处理算法对所述字段进行分词处理,并除去停用词,得到关键字段;
根据预设的关联条件规则及所述关键字段得到表格关联关系。
其中,本发明实施例中所述预设的语言处理算法可以是目前已公开的TextRank、基于语义的关键词提取算法等。所述预设的关联条件规则是指人为设定的对于不同的关键字段建立不同的关联关系规则。比如,A表格下得到的关键字段为a,B表格下得到的关键字段为a,则建立关联关系:A表的a字段=B表的a字段。
本发明实施例通过所述利用预设的查询语句解析器对所述源码查询语句进行解析,可以快速的解析出表格关联关系。
S4、对所述预设格式文件进行解析,得到表格关系图。
参照图5所示,本发明实施例中,所述对所述预设格式文件进行解析,得到表格关系图,包括:
S40、利用所述原始框架将所述预设格式文件转化为开发格式;
S41、利用预设的语言协议将所述开发格式转化为表格关系图。
其中,所述开发格式可以为vue.js。所述预设的语言协议可以为超文本标记语言(HTML,Hyper Text Markup Language)。所述开发格式使用了基于HTML的模版语法来对所述表格关联关系进行渲染。利用所述HTML可以直接将所述表格关系图展示在浏览器中。
进一步地,所述利用预设的语言协议将所述开发格式转化为表格关系图,包括:
利用所述预设的语言协议提取所述表格关联关系对应的表格;
以所述表格作为实体,根据所述表格的类型确定属性,并以所述表格关联关系作为关系,生成所述表格关系图。
其中,所述表格关系图可以为E-R图(Entity Relationship Diagram,实体-联系图),用来描述表格需求或要存储在数据库中的表格的类型,所述E-R图主要包括实体、属性和关联关系。比如,A表与B表具有关联关系且A表与B表的类型为信息表,则在表格关系图中,A表及B表作为实体,信息表为属性,中间用代表关联关系的线相连。
进一步地,在实际的业务系统开发中,各种数据一般以表格的形式保存在数据库中,各个表格及其属性以及各表格之间的关系代表了实际业务系统中的数据结构。本发明实施例通过所述表格关系图可以完整的反映出数据结构关系,还可以反映出各个表格之间具有的关联关系。
本发明利用所述原始框架生成预设数据库中表格的配置文件,对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中,同时利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,不需要表格与表格之间有主外键关系,可以直接基于所述源码查询语句得到表格之间的关联关系,进而根据所述关联关系对表格进行可视化。因此本发明实施可以解决表格之间无法自动生成可视化E-R图的问题。
如图6所示,是本发明一实施例提供的表格关系可视化装置的功能模块图。
本发明所述表格关系可视化装置100可以安装于电子设备中。根据实现的功能,所述表格关系可视化装置100可以包括表格配置模块101、模拟连接模块102、语句解析模块103及关系图生成模块104。本发明所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
所述表格配置模块101,用于获取原始框架,并利用所述原始框架生成预设数据库中表格的配置文件,其中,所述配置文件中包括源码查询语句。
本发明实施例中,所述原始框架可以为Mybatis框架,所述Mybatis框架是一款持久层框架,支持定制化查询语句(SQL)、存储过程以及高级映射等。所述预设数据库可以为关系型数据库Oracle,SQLServer等。所述表格可以是存储任何数据的表格,比如,在银行业务场景中,所述表格包括:用户信息表、业务员备注表、代理人活动组织审批表、晨夕会会议主题表、问卷主表、问卷层级表、问卷问题配置表及问卷答案配置表等。
较佳地,所述表格配置模块101通过下述操作利用所述原始框架生成预设数据库中表格的配置文件:
根据预设的业务场景将所述原始框架与所述预设数据库相关联;
利用预设的软件系统提取所述业务场景下所述原始框架与所述预设数据库相关联的源码查询语句,汇总所述源码查询语句得到所述配置文件。
其中,所述预设的软件系统可以为JAVA软件系统,所述JAVA软件系统在各个业务场景下,会调用不同的数据库,并且每个业务场景下都会有不同的源码查询语句。所述源码查询语句可以为SQL语句,所述SQL语句允许用户简明扼要地声明需要的业务逻辑,SQL属于设定式语言,只需将需求表达清楚即可,不需要了解具体做法;SQL可优化,内置多种查询优化器,多种查询优化器可为SQL翻译出最优执行计划。
详细地,所述配置文件可以为xml(eXtensible Markup Language,可扩展标记语言)格式的文件,所述xml格式是一种简单的数据存储结构,xml格式的简单使其易于在任何应用程序中读写数据,这使xml很快成为数据交换的唯一公共语言,不同的应用软件都支持这种xml数据交换格式,意味着程序可以更容易的与Windows、Mac OS,Linux以及其他平台下产生的信息结合,然后可以很容易加载xml数据到程序中并分析,并以xml格式输出结果。比如,所述JAVA软件系统将不同业务场景下的SQL语句组合拼装成配置文件mybatis.xml。
本发明实施通过生成所述配置文件,便于解析及传输,减低了对计算机资源的占用。
所述模拟连接模块102,用于对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中。
较佳地,所述模拟连接模块102通过下述操作对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中:
获取预设的嵌入式数据库,将所述原始框架与所述嵌入式数据库模拟连接;
调用所述原始框架中的预设文件包,根据所述预设文件包完成模拟调用,并将所述配置文件中的所有源码查询语句存储在缓存中。
其中,所述预设的嵌入式数据库可以为H2数据库,所述H2数据库是一个Java编写的关系型数据库,它可以被嵌入Java应用程序中使用,或者作为一个单独的数据库服务器运行。H2主要有如下三个用途:第一个用途,也是最常使用的用途就在于可以同结合不同的应用程序打包在一起发布,这样可以非常方便地存储少量结构化数据;第二个用途是用于单元测试。启动速度快,而且可以关闭持久化功能,每一个用例执行完随即还原到初始状态。第三个用途是作为缓存,即当做内存数据库,缓存一些不经常变化但需要频繁访问的数据,比如字典表、权限表。本发明实施例中,为了对所述配置文件中的源码查询语句进行执行,需要有本地数据库(即H2数据库)进行连接,所述H2数据库是一个空的.db文件即可。所述预设文件包,可以为所述原始框架中的相应JAR(Java ARchive,Java归档)文件包,所述JAR文件包以流行的ZIP文件格式为基础,与ZIP文件不同的是,JAR文件包不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可直接进行调用。
进一步地,本发明实施通过对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中,不需要存储在关系型数据库中,大大降低了对存储空间的占用。
所述语句解析模块103,用于利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,并根据所述表格关联关系生成预设格式文件。
本发明实施例中,所述预设格式可以为JSON(JavaScript Object Notation,JS对象简谱)格式,通过调用JavaScript库(如jQuery库)中的格式转化函数将所述表格关联关系转化为JSON格式的数据,并汇总所有JSON格式的数据得到所述预设格式文件。所述JSON格式是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据,易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。本发明实施例中,所述JSON格式文件可以为{"id1":"sql1","id2":"sql2","id3":"sql3"...}。
较佳地,所述语句解析模块103通过下述操作得到表格关联关系:
利用预设的查询语句解释器将所述源码查询语句解析成多个查询语句类别;
提取所述查询语句类别下的字段,根据所述字段确定所述表格关联关系。
其中,所述预设的查询语句解释器可以为Jsqlparser解释器,所述Jsqlparser解释器可以将不同的源码查询语句解析成相应的类别。比如,查询SQL会解析成查询类(select)。所述查询类包括表名、字段名及查询函数等。
进一步地,所述语句解析模块103通过下述操作提取所述查询语句类别下的字段,根据所述字段确定所述表格关联关系:
利用预设的语言处理算法对所述字段进行分词处理,并除去停用词,得到关键字段;
根据预设的关联条件规则及所述关键字段得到表格关联关系。
其中,本发明实施例中所述预设的语言处理算法可以是目前已公开的TextRank、基于语义的关键词提取算法等。所述预设的关联条件规则是指人为设定的对于不同的关键字段建立不同的关联关系规则。比如,A表格下得到的关键字段为a,B表格下得到的关键字段为a,则建立关联关系:A表的a字段=B表的a字段。
本发明实施例通过所述利用预设的查询语句解析器对所述源码查询语句进行解析,可以快速的解析出表格关联关系。
所述关系图生成模块104,用于对所述预设格式文件进行解析,得到表格关系图。
较佳地,所述关系图生成模块104通过下述操作对所述预设格式文件进行解析,得到表格关系图:
利用所述原始框架将所述预设格式文件转化为开发格式;
利用预设的语言协议将所述开发格式转化为表格关系图。
其中,所述开发格式可以为vue.js。所述预设的语言协议可以为超文本标记语言(HTML,Hyper Text Markup Language)。所述开发格式使用了基于HTML的模版语法来对所述表格关联关系进行渲染。利用所述HTML可以直接将所述表格关系图展示在浏览器中。
进一步地,所述关系图生成模块104通过下述操作利用预设的语言协议将所述开发格式转化为表格关系图:
利用所述预设的语言协议提取所述表格关联关系对应的表格;
以所述表格作为实体,根据所述表格的类型确定属性,并以所述表格关联关系作为关系,生成所述表格关系图。
其中,所述表格关系图可以为E-R图(Entity Relationship Diagram,实体-联系图),用来描述表格需求或要存储在数据库中的表格的类型,所述E-R图主要包括实体、属性和关联关系。比如,A表与B表具有关联关系且A表与B表的类型为信息表,则在表格关系图中,A表及B表作为实体,信息表为属性,中间用代表关联关系的线相连。
进一步地,在实际的业务系统开发中,各种数据一般以表格的形式保存在数据库中,各个表格及其属性以及各表格之间的关系代表了实际业务系统中的数据结构。本发明实施例通过所述表格关系图可以完整的反映出数据结构关系,还可以反映出各个表格之间具有的关联关系。
如图7所示,是本发明一实施例提供的实现表格关系可视化方法的电子设备的结构示意图。
所述电子设备1可以包括处理器10、存储器11和总线,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如表格关系可视化程序12。
其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备1的内部存储单元,例如该电子设备1的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备1的外部存储设备,例如电子设备1上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(SecureDigital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备1的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备1的应用软件及各类数据,例如表格关系可视化程序12的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如表格关系可视化程序等),以及调用存储在所述存储器11内的数据,以执行电子设备1的各种功能和处理数据。
所述总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
图7仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图7示出的结构并不构成对所述电子设备1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备1还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备1还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述电子设备1还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备1与其他电子设备之间建立通信连接。
可选地,该电子设备1还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备1中的所述存储器11存储的表格关系可视化程序12是多个指令的组合,在所述处理器10中运行时,可以实现:
获取原始框架,并利用所述原始框架生成预设数据库中表格的配置文件,其中,所述配置文件中包括源码查询语句;
对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中;
利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,并根据所述表格关联关系生成预设格式文件;
对所述预设格式文件进行解析,得到表格关系图。
具体地,所述处理器10对上述指令的具体实现方法可参考图1至图5对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备1集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。所述计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本发明还提供一种计算机可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被电子设备的处理器所执行时,可以实现:
获取原始框架,并利用所述原始框架生成预设数据库中表格的配置文件,其中,所述配置文件中包括源码查询语句;
对所述原始框架进行模拟连接,并将所述源码查询语句存储到所述原始框架的缓存中;
利用预设的查询语句解析器对所述源码查询语句进行解析,得到表格关联关系,并根据所述表格关联关系生成预设格式文件;
对所述预设格式文件进行解析,得到表格关系图。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (7)

1.一种表格关系可视化方法,其特征在于,所述方法包括:
获取原始框架,根据预设的业务场景将所述原始框架与预设数据库相关联,利用预设的软件系统提取所述业务场景下所述原始框架与所述预设数据库相关联的源码查询语句,汇总所述源码查询语句得到配置文件;
获取预设的嵌入式数据库,将所述原始框架与所述嵌入式数据库模拟连接,调用所述原始框架中的预设文件包,根据所述预设文件包完成模拟调用,并将所述配置文件中的所有源码查询语句存储到所述原始框架的缓存中,所述预设的嵌入式数据库是一个空的本地数据库;
利用预设的查询语句解释器将所述源码查询语句解析成多个查询语句类别,提取所述查询语句类别下的字段,根据所述字段确定表格关联关系,并根据所述表格关联关系生成预设格式文件;
对所述预设格式文件进行解析,得到表格关系图。
2.如权利要求1所述的表格关系可视化方法,其特征在于,所述提取所述查询语句类别下的字段,根据所述字段确定所述表格关联关系,包括:
利用预设的语言处理算法对所述字段进行分词处理,并除去停用词,得到关键字段;
根据预设的关联条件规则及所述关键字段得到表格关联关系。
3.如权利要求1所述的表格关系可视化方法,其特征在于,所述对所述预设格式文件进行解析,得到表格关系图,包括:
利用所述原始框架将所述预设格式文件转化为开发格式;
利用预设的语言协议将所述开发格式转化为表格关系图。
4.如权利要求3所述的表格关系可视化方法,其特征在于,所述利用预设的语言协议将所述开发格式转化为表格关系图,包括:
利用所述预设的语言协议提取所述表格关联关系对应的表格;
以所述表格作为实体,根据所述表格的类型确定属性,并以所述表格关联关系作为关系,生成所述表格关系图。
5.一种表格关系可视化装置,其特征在于,所述装置包括:
表格配置模块,用于获取原始框架,根据预设的业务场景将所述原始框架与所述预设数据库相关联,利用预设的软件系统提取所述业务场景下所述原始框架与所述预设数据库相关联的源码查询语句,汇总所述源码查询语句得到配置文件;
模拟连接模块,用于获取预设的嵌入式数据库,将所述原始框架与所述嵌入式数据库模拟连接,调用所述原始框架中的预设文件包,根据所述预设文件包完成模拟调用,并将所述配置文件中的所有源码查询语句存储到所述原始框架的缓存中,所述预设的嵌入式数据库是一个空的本地数据库;
语句解析模块,用于利用预设的查询语句解释器将所述源码查询语句解析成多个查询语句类别,提取所述查询语句类别下的字段,根据所述字段确定表格关联关系,并根据所述表格关联关系生成预设格式文件;
关系图生成模块,用于对所述预设格式文件进行解析,得到表格关系图。
6.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至4中任意一项所述的表格关系可视化方法。
7.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4中任意一项所述的表格关系可视化方法。
CN202011645089.9A 2020-12-31 2020-12-31 表格关系可视化方法、装置、电子设备及存储介质 Active CN112597171B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011645089.9A CN112597171B (zh) 2020-12-31 2020-12-31 表格关系可视化方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011645089.9A CN112597171B (zh) 2020-12-31 2020-12-31 表格关系可视化方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112597171A CN112597171A (zh) 2021-04-02
CN112597171B true CN112597171B (zh) 2024-08-27

Family

ID=75206760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011645089.9A Active CN112597171B (zh) 2020-12-31 2020-12-31 表格关系可视化方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112597171B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114064655B (zh) * 2021-11-23 2024-03-29 上证所信息网络有限公司 一种可配置化数据查询及数据关系的自动发现方法
CN116501757B (zh) * 2023-06-20 2023-10-03 鹏城实验室 一种基于er图的模拟数据构造方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111563131A (zh) * 2020-04-03 2020-08-21 苏宁云计算有限公司 数据库实体关系生成方法、装置、计算机设备和存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10592482B2 (en) * 2015-12-29 2020-03-17 Cognizant Technology Solutions India Pvt. Ltd. Method and system for identifying and analyzing hidden data relationships in databases
CN107665228B (zh) * 2017-05-10 2019-12-20 平安科技(深圳)有限公司 一种关联信息查询方法、终端及设备
CN110866042B (zh) * 2019-10-11 2023-05-12 平安科技(深圳)有限公司 表格智能查询方法、装置及计算机可读存储介质
CN111767266B (zh) * 2020-05-15 2024-08-06 杭州睿疆科技有限公司 实体联系模型设计方法、装置、计算机设备和存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111563131A (zh) * 2020-04-03 2020-08-21 苏宁云计算有限公司 数据库实体关系生成方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN112597171A (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
CN111813963B (zh) 知识图谱构建方法、装置、电子设备及存储介质
CN110347598B (zh) 一种测试脚本生成方法、装置、服务器及存储介质
CN112711581B (zh) 医疗数据校验方法、装置、电子设备及存储介质
CN112052242A (zh) 数据查询方法、装置、电子设备及存储介质
WO2022179123A1 (zh) 数据更新及展示方法、装置、电子设备及存储介质
EP3916584A1 (en) Information processing method and apparatus, electronic device and storage medium
CN111859969B (zh) 数据分析方法及装置、电子设备、存储介质
CN112597171B (zh) 表格关系可视化方法、装置、电子设备及存储介质
US20120158742A1 (en) Managing documents using weighted prevalence data for statements
CN114610747A (zh) 数据查询方法、装置、设备及存储介质
CN112231417A (zh) 数据分类方法、装置、电子设备及存储介质
CN113962597A (zh) 一种数据分析方法、装置、电子设备及存储介质
CN117033249A (zh) 一种测试用例生成方法、装置、计算机设备及存储介质
CN113687827B (zh) 基于微件的数据列表生成方法、装置、设备及存储介质
CN113792138B (zh) 报表生成方法、装置、电子设备及存储介质
CN111913922A (zh) 二进制结构化日志的生成方法、装置、设备及存储介质
CN113360139A (zh) 前端框架的集成方法、装置、电子设备及存储介质
CN116450723A (zh) 数据提取方法、装置、计算机设备及存储介质
US8607201B2 (en) Augmenting visualization of a call stack
CN115809241A (zh) 数据存储方法、装置、计算机设备及存储介质
CN115390936A (zh) 统一校验方法、装置、设备和存储介质
CN114742051A (zh) 日志处理方法、装置、计算机系统及可读存储介质
CN114385155A (zh) vue项目可视化工具生成方法、装置、设备及存储介质
CN113032515A (zh) 基于多数据源生成图表的方法、系统、设备及存储介质
CN112214981B (zh) 演示文件生成方法、装置、电子设备及存储介质

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
GR01 Patent grant
GR01 Patent grant