发明内容
本发明提供一种数据库的处理方法和装置,用以解决现有技术中通过人工的方式挑选字段信息、人工的编写数据字典的方式,生成数据字典的时间较长,同时生成数据字典的效率很低的问题。
本发明的一方面是提供一种数据库的处理方法,包括:
获取待连接的数据库的数据库标识;
根据所述数据库标识,连接与所述数据库标识对应的数据库,所述数据库中包括至少一个数据表,所述数据表中包括至少一个字段信息,所述字段信息包括字段标识;
根据各所述字段信息的字段标识,以及预设的编排格式,生成预设格式的数据字典,所述数据字典中包括按照所述预设的编排格式生成的字段信息。
如上所述的方法中,所述获取待连接的数据库的数据库标识,包括:
接收用户输入的待连接的数据库的数据库标识。
如上所述的方法中,所述获取待连接的数据库的数据库标识,包括:
获取浏览器中的预设的待连接的数据库的数据库标识。
如上所述的方法中,在所述根据所述数据库标识,连接与所述数据库标识对应的数据库之后,还包括:
获取各所述字段信息的冗余度,所述冗余度为字段信息在所有所述数据表中的出现次数之和;
提取待显示的字段信息,所述待显示的字段信息为冗余度大于预设次数的字段信息,或者所述待显示的字段信息为冗余度等于数据表的个数之和的字段信息;
将所述待显示的字段信息与待显示的字段信息所归属的数据表相关联,生成关联关系;
根据所述待显示的字段信息的字段标识、所述关联关系、以及所述待显示的字段信息的冗余度,生成数据库冗余度图。
如上所述的方法中,所述预设格式包括:
word格式、或excel格式、或visio格式。
本发明的另一方面是提供一种数据库的处理装置,包括:
获取模块,用于获取待连接的数据库的数据库标识;
连接模块,用于根据所述数据库标识,连接与所述数据库标识对应的数据库,所述数据库中包括至少一个数据表,所述数据表中包括至少一个字段信息,所述字段信息包括字段标识;
编排模块,用于根据各所述字段信息的字段标识,以及预设的编排格式,生成预设格式的数据字典,所述数据字典中包括按照所述预设的编排格式生成的字段信息。
如上所述的装置中,所述获取模块,具体用于:
接收用户输入的待连接的数据库的数据库标识。
如上所述的装置中,所述获取模块,具体用于:
获取浏览器中的预设的待连接的数据库的数据库标识。
如上所述的装置中,还包括:
统计模块,用于在所述连接模块根据所述数据库标识,连接与所述数据库标识对应的数据库之后,获取各所述字段信息的冗余度,所述冗余度为字段信息在所有所述数据表中的出现次数之和;
提取模块,用于提取待显示的字段信息,所述待显示的字段信息为冗余度大于预设次数的字段信息,或者所述待显示的字段信息为冗余度等于数据表的个数之和的字段信息;
关联模块,用于将所述待显示的字段信息与待显示的字段信息所归属的数据表相关联,生成关联关系;
生成模块,用于根据所述待显示的字段信息的字段标识、所述关联关系、以及所述待显示的字段信息的冗余度,生成数据库冗余度图。
本发明通过获取待连接的数据库的数据库标识,根据数据库标识,连接与数据库标识对应的数据库,数据库中包括至少一个数据表,数据表中包括至少一个字段信息,字段信息包括字段标识;根据各字段信息的字段标识,以及预设的编排格式,生成预设格式的数据字典,数据字典中包括按照预设的编排格式生成的字段信息。从而不需要通过人工的方式挑选字段信息,也不需要人工的编写数据字典;可以通过自动连接数据库,获取数据库中的数据表中的字段信息,从而将字段信息安装预设的编排格式,自动的编排成数据字典;缩短了生成数据字典的时间,提高了生成数据字典的效率。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例一提供的数据库的处理方法的流程图,如图1所示,本实施例的方法包括:
步骤101、获取待连接的数据库的数据库标识。
在本实施例中,具体的,首先,获取待连接的数据库的数据库标识,数据库标识可以采用数据库名字、或者数据库标号等多种形式进行表示。
步骤102、根据数据库标识,连接与数据库标识对应的数据库,数据库中包括至少一个数据表,数据表中包括至少一个字段信息,字段信息包括字段标识。
在本实施例中,具体的,根据步骤101中确定的数据库标识,和与数据库标识对应的数据库连接,可以是无线连接,也可以是有线连接。
数据库具有多种,并且在各个数据库中包含中上百张数据表,数据表中包含着各种各样的数据结构,从而在数据包中包含着多个字段信息,也就是数据。
进而连接上的数据库中包括了至少一个数据表,且数据表中包括了至少一个字段信息。其中,字段信息中包括了字段标识、字段内容、字段属性等信息。
举例来说,对于一个保存了文献的数据库,数据库中包含了多张数据表,数据表中包含了文献名称的字段信息、地址的字段信息、摘要的字段信息、文献内容的字段信息等等;文献名称的字段信息中,name为其字段标识,文献具体名称为字段内容。
步骤103、根据各字段信息的字段标识,以及预设的编排格式,生成预设格式的数据字典,数据字典中包括按照预设的编排格式生成的字段信息。
在本实施例中,具体的,根据步骤102中获取的字段信息的字段标识,以及预设的编排格式,可以按照预设的编排格式生成字段信息,从而编排出预设格式的数据字典。
举例来说,数据表1中包含了字段信息1、字段信息2、字段信息3,并且各字段信息具有字段标识;数据表2中包含了字段信息1、字段信息2、字段信息3,并且各字段信息具有字段标识;数据表3中包含了字段信息1、字段信息2、字段信息3,并且各字段信息具有字段标识;设置编排出的数据字典的保存格式,设置编排出的数据字典的行距,设置编排出的数据字典的字体和字号等信息;若需要导出各数据表中的字段信息1,从而可以按照预设的编排格式,将各数据包中的字段信息1编排成数据字典;若数据表保存的是文献信息,需要导出数据表1中的所有字段信息,从而可以按照预设的编排格式,将数据包1中的所有字段信息编排成一篇文献。
本实施例可以基于poi、Jfreechar开源框架进行开发,在数据库结构查询的基础上进行整合成,开发出一个应用web工具,
本实施例通过获取待连接的数据库的数据库标识,根据数据库标识,连接与数据库标识对应的数据库,数据库中包括至少一个数据表,数据表中包括至少一个字段信息,字段信息包括字段标识;根据各字段信息的字段标识,以及预设的编排格式,生成预设格式的数据字典,数据字典中包括按照预设的编排格式生成的字段信息。从而不需要通过人工的方式挑选字段信息,也不需要人工的编写数据字典;可以通过自动连接数据库,获取数据库中的数据表中的字段信息,从而将字段信息安装预设的编排格式,自动的编排成数据字典;缩短了生成数据字典的时间,提高了生成数据字典的效率。
图2为本发明实施例二提供的数据库的处理方法的流程图,如图2所示,在实施例一的基础上,本实施例的方法中,步骤101,包括:
接收用户输入的待连接的数据库的数据库标识。
或者,获取浏览器中的预设的待连接的数据库的数据库标识。
在本实施例中,具体的,用户可以填写需要连接的数据库的数据库信息,数据库信息包括了数据库标识、数据库名称和数据库地址等信息。从而可以获取到用户输入的待连接的数据库的数据库标识。
或者,在浏览器中预先设置了待连接的数据库的数据库信息,同样的,数据库信息包括了数据库标识、数据库名称和数据库地址等信息;在用户打开浏览器,点击了相应的连接按钮之后,可以获取到浏览器中的预设的待连接的数据库的数据库标识。
并且,步骤103中的预设格式包括:word格式、或excel格式、或visio格式。从而可以根据步骤102中获取的字段信息的字段标识,以及预设的编排格式,可以按照预设的编排格式生成字段信息,从而编排出word格式的数据字典、或者编排出excel格式的数据字典、编排出visio格式的数据字典。
在步骤102之后,还包括:
步骤201、获取各字段信息的冗余度,冗余度为字段信息在所有数据表中的出现次数之和。
在本实施例中,具体的,在与步骤101中的数据库连接之后,可以获取到数据库中的数据表,从而可以获取到各个数据表中的字段信息。
首先统计各个字段信息在所有数据表中的出现字数之和,进而获取到了各字段信息的冗余度。
举例来说,数据表1中包含了字段信息1、字段信息2、字段信息3、字段信息4;数据表2中包含了字段信息1、字段信息2、字段信息3、字段信息4;数据表3中包含了字段信息1、字段信息2、字段信息3、字段信息5;可以确定字段信息1的冗余度为3、字段信息2的冗余度为3、字段信息3的冗余度为3、字段信息4的冗余度为2、字段信息5的冗余度为1。
步骤202、提取待显示的字段信息,待显示的字段信息为冗余度大于预设次数的字段信息,或者待显示的字段信息为冗余度等于数据表的个数之和的字段信息。
在本实施例中,具体的,确定冗余度大于预设次数的字段信息,从而将冗余度大于预设次数的字段信息作为待显示的字段信息提取出来;具体来说,可以将待显示的字段信息存放到另外一张数据表中。其中,预设次数的值,根据实际的使用情况实时的确定,本实施例不做限定。
或者,统计出冗余度等于数据表的个数之和的字段信息,将冗余度等于数据表的个数之和的字段信息作为待显示的字段信息提取出来;此时,可以将所有数据表中共有的重复的字段信息抽取出来,放到另外一张数据表中。
举例来说,字段信息1的冗余度为3、字段信息2的冗余度为3、字段信息3的冗余度为3、字段信息4的冗余度为2、字段信息5的冗余度为1;预设次数为1,从而将冗余度大于预设次数1的字段信息1、字段信息2、字段信息3、字段信息4作为待显示的字段信息提取出来。
再举例来说,字段信息1的冗余度为3、字段信息2的冗余度为3、字段信息3的冗余度为3、字段信息4的冗余度为2、字段信息5的冗余度为1;预设次数为1,从而将冗余度等于数据表的个数之和3的字段信息1、字段信息2、字段信息3作为待显示的字段信息提取出来,此时可以将所有数据表中的共有的字段信息提取出来。
步骤203、将待显示的字段信息与待显示的字段信息所归属的数据表相关联,生成关联关系。
在本实施例中,具体的,将各待显示的字段信息与各待显示的字段信息所归属的各数据表相关联起来,从而生成关联关系。
举例来说,数据表1中包含了字段信息1、字段信息2、字段信息3、字段信息4;数据表2中包含了字段信息1、字段信息2、字段信息3、字段信息4;数据表3中包含了字段信息1、字段信息2、字段信息3、字段信息5;可以确定字段信息1的冗余度为3、字段信息2的冗余度为3、字段信息3的冗余度为3、字段信息4的冗余度为2、字段信息5的冗余度为1;将冗余度大于预设次数1的字段信息1、字段信息2、字段信息3、字段信息4作为待显示的字段信息提取出来;由于字段信息1、字段信息2、字段信息3都存在于数据表1、数据表2、数据表3,字段信息4存在于数据表1、数据表2,从而将待显示的字段信息1分别与数据表1、数据表2、数据表3相关联,将待显示的字段信息2分别与数据表1、数据表2、数据表3相关联,将待显示的字段信息3分别与数据表1、数据表2、数据表3相关联,将待显示的字段信息4分别与数据表1、数据表2相关联,从而形成各自的关联关系。
再举例来说,待显示的字段信息为字段信息1、字段信息2、字段信息3,字段信息1、字段信息2、字段信息3都存在于数据表1、数据表2、数据表3,从而将待显示的字段信息1分别与数据表1、数据表2、数据表3相关联,将待显示的字段信息2分别与数据表1、数据表2、数据表3相关联,将待显示的字段信息3分别与数据表1、数据表2、数据表3相关联。
步骤204、根据待显示的字段信息的字段标识、关联关系、以及待显示的字段信息的冗余度,生成数据库冗余度图。
在本实施例中,具体的,根据各待显示的字段信息的字段标识,步骤203中生成的关联关系,以及各待显示的字段信息的冗余度,生成一张数据库冗余度图。其中,数据库冗余度图可以是表格图、也可以是散点图、也可以是折线图、也可以是柱形图等等。
从而用户可以观察到生成的数据库冗余度图,由于各待显示的字段信息与各待显示的字段信息所归属的数据表进行了关联,形成了关联关系;从而用户在点击各待显示的字段信息的字段标识,或者点击各待显示的字段信息的冗余度时,可以查看到各待显示的字段信息归属于哪一张、或哪几张数据表,并且将各待显示的字段信息归属于的数据表打开,或者将各待显示的字段信息归属于的数据表的位置、名称等信息显示出来。
并且用户进入到数据库的结构展示页面,选择不同的数据库冗余度图,可以查看数据表的字段信息在整个数据库中所占的冗余度。
举例来说,可以生成一张散点图形式的数据库冗余度图,数据库冗余度图的x轴为各待显示的字段信息的字段标识,数据冗余度图的y轴为各待显示的字段信息的冗余度,数据冗余度图上的散点设置了待显示的字段信息与待显示的字段信息所归属的数据表的关联关系;从而用户观看数据冗余度图,可以观看到各待显示的字段信息的冗余度;用户点击数据冗余度图上的散点,数据冗余度图可以将各待显示的字段信息所归属的数据表的名称、地址显示出来,或者数据冗余度图打开各待显示的字段信息所归属的数据表。
本实施例通过接收用户输入的待连接的数据库的数据库标识,或者获取浏览器中的预设的待连接的数据库的数据库标识,可以获取数据库中的字段信息,根据字段信息的字段标识和预设的编排格式,可以按照预设的编排格式生成字段信息,从而编排出word格式的数据字典、或者编排出excel格式的数据字典、编排出visio格式的数据字典;从而不需要通过人工的方式挑选字段信息,也不需要人工的编写数据字典;可以通过自动连接数据库,获取数据库中的数据表中的字段信息,从而将字段信息安装预设的编排格式,自动的编排成数据字典;缩短了生成数据字典的时间,提高了生成数据字典的效率。通过获取各字段信息的冗余度,提取冗余度大于预设次数的待显示的字段信息,或者提取所有数据表中的共有的字段信息作为待显示的字段信息,将待显示的字段信息与待显示的字段信息所归属的数据表相关联之后生成关联关系,进而根据待显示的字段信息的字段标识、关联关系、待显示的字段信息的冗余度,生成数据库冗余度图;从而使得整个数据库能够有很好的数据关联关系,大大减少了数据结构冗余;能够纵向进行数据库结构的统计,促进了数据库结构的优化;这种采用面向对象的方式,可以使得数据库更加直接的面向用户。
图3为本发明实施例三提供的数据库的处理装置的结构示意图,如图3所示,本实施例提供的数据库的处理装置,包括:
获取模块31,用于获取待连接的数据库的数据库标识;
连接模块32,用于根据数据库标识,连接与数据库标识对应的数据库,数据库中包括至少一个数据表,数据表中包括至少一个字段信息,字段信息包括字段标识;
编排模块33,用于根据各字段信息的字段标识,以及预设的编排格式,生成预设格式的数据字典,数据字典中包括按照预设的编排格式生成的字段信息。
本实施例的数据库的处理装置可执行本发明实施例一提供的数据库的处理方法,其实现原理相类似,此处不再赘述。
本实施例通过获取待连接的数据库的数据库标识,根据数据库标识,连接与数据库标识对应的数据库,数据库中包括至少一个数据表,数据表中包括至少一个字段信息,字段信息包括字段标识;根据各字段信息的字段标识,以及预设的编排格式,生成预设格式的数据字典,数据字典中包括按照预设的编排格式生成的字段信息。从而不需要通过人工的方式挑选字段信息,也不需要人工的编写数据字典;可以通过自动连接数据库,获取数据库中的数据表中的字段信息,从而将字段信息安装预设的编排格式,自动的编排成数据字典;缩短了生成数据字典的时间,提高了生成数据字典的效率。
图4为本发明实施例四提供的数据库的处理装置的结构示意图,在实施例三的基础上,如图4所示,本实施例提供的数据库的处理装置,获取模块31,具体用于:
接收用户输入的待连接的数据库的数据库标识。
或者,获取模块31,具体用于:
获取浏览器中的预设的待连接的数据库的数据库标识。
本实施例提供的数据库的处理装置,还包括:
统计模块41,用于在连接模块32根据数据库标识,连接与数据库标识对应的数据库之后,获取各字段信息的冗余度,冗余度为字段信息在所有数据表中的出现次数之和;
提取模块42,用于提取待显示的字段信息,待显示的字段信息为冗余度大于预设次数的字段信息,或者待显示的字段信息为冗余度等于数据表的个数之和的字段信息;
关联模块43,用于将待显示的字段信息与待显示的字段信息所归属的数据表相关联,生成关联关系;
生成模块44,用于根据待显示的字段信息的字段标识、关联关系、以及待显示的字段信息的冗余度,生成数据库冗余度图。
本实施例的数据库的处理装置可执行本发明实施例二提供的数据库的处理方法,其实现原理相类似,此处不再赘述。
本实施例通过接收用户输入的待连接的数据库的数据库标识,或者获取浏览器中的预设的待连接的数据库的数据库标识,可以获取数据库中的字段信息,根据字段信息的字段标识和预设的编排格式,可以按照预设的编排格式生成字段信息,从而编排出word格式的数据字典、或者编排出excel格式的数据字典、编排出visio格式的数据字典;从而不需要通过人工的方式挑选字段信息,也不需要人工的编写数据字典;可以通过自动连接数据库,获取数据库中的数据表中的字段信息,从而将字段信息安装预设的编排格式,自动的编排成数据字典;缩短了生成数据字典的时间,提高了生成数据字典的效率。通过获取各字段信息的冗余度,提取冗余度大于预设次数的待显示的字段信息,或者提取所有数据表中的共有的字段信息作为待显示的字段信息,将待显示的字段信息与待显示的字段信息所归属的数据表相关联之后生成关联关系,进而根据待显示的字段信息的字段标识、关联关系、待显示的字段信息的冗余度,生成数据库冗余度图;从而使得整个数据库能够有很好的数据关联关系,大大减少了数据结构冗余;能够纵向进行数据库结构的统计,促进了数据库结构的优化;这种采用面向对象的方式,可以使得数据库更加直接的面向用户。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。