一种数据库表结构的导出方法及装置与流程

文档序号:15686569发布日期:2018-10-16 21:07阅读:174来源:国知局

本发明涉及数据处理领域,具体涉及一种数据库表结构的导出方法及装置。



背景技术:

在系统后台代码的开发过程中,不可避免的会用到数据库,一般一个数据库包含许多张表,每张表包含许多列,每列又包含许多属性,如列名、类型、描述、主键、是否为空等等。数据库表结构用于定义数据库中表的列名、类型、描述、主键、是否为空等属性。

目前存在一些使用数据库表结构的需求,如设计人员在制作数据库的详细设计文档时需要添加数据库表结构。现有的处理方法是由设计人员参照数据库表结构手动将数据库表结构绘制到数据库的详细设计文档中,如果数据库表结构的数量较大,对于设计人员无疑是一项大工程。另外,基于人工操作的特点,手动绘制数据表结构的出错率也会较高。



技术实现要素:

有鉴于此,本发明提供了一种数据库表结构的导出方法及装置,能够自动化的完成数据库表结构的导出,效率较高且避免出错。

本发明提供了一种数据库表结构的导出方法,所述方法包括:

确定待导出表结构的数据库表,并获取所述数据库表的表结构;

确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息;

根据所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据;

利用预设第一标识符将提取到的数据进行拼接后,存储为csv文件。

优选地,所述确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息之前,还包括:

按照字节识别所述表结构中的字符,并将tab键对应的字符“\t”转换为预设第二标识符,得到由所述第二标识符分割后的表结构;

相应的,所述确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息,具体为:

确定所述表结构中的待导出属性对应的列,在由所述第二标识符分割后的表结构中的位置信息。

优选地,所述确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息之前,还包括:

将所述表结构复制到文本编辑器中;

按照字节识别所述表结构中的字符,并将字符“|”转换为预设第三标识符,得到由所述第三标识符分割后的表结构;

相应的,所述确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息,具体为:

确定所述表结构中的待导出属性对应的列,在由所述第三标识符分割后的表结构中的位置信息。

优选地,所述方法还包括:

将所述csv文件中存储的数据直接复制到文档。

本发明还提供了一种数据库表结构的导出装置,所述装置包括:

获取模块,用于确定待导出表结构的数据库表,并获取所述数据库表的表结构;

确定模块,用于确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息;

提取模块,用于根据所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据;

存储模块,用于利用预设第一标识符将提取到的数据进行拼接后,存储为csv文件。

优选地,所述装置还包括:

第一转换模块,用于按照字节识别所述表结构中的字符,并将tab键对应的字符“\t”转换为预设第二标识符,得到由所述第二标识符分割后的表结构;

相应的,所述确定模块,具体用于:

确定所述表结构中的待导出属性对应的列,在由第二标识符分割后的表结构中的位置信息。

优选地,所述装置还包括:

第一复制模块,用于将所述表结构复制到文本编辑器中;

第二转换模块,用于按照字节识别所述表结构中的字符,并将字符“|”转换为预设第三标识符,得到由所述第三标识符分割后的表结构;

相应的,所述确定模块,具体用于:

确定所述表结构中的待导出属性对应的列,在由所述第三标识符分割后的表结构中的位置信息。

优选地,所述装置还包括:

第二复制模块,用于将所述csv文件中存储的数据直接复制到文档。

本发明提供了一种数据库表结构的导出方法,首先确定待导出表结构的数据库表,并获取所述数据库表的表结构。其次,确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息。再次,根据所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据。最后,利用预设第一标识符将提取到的数据进行拼接后,存储为csv文件。本发明能够自动化的完成数据库表结构的导出,效率较高且避免出错。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种数据库表结构的导出方法流程图;

图2为本发明实施例提供的一种数据库表的表结构的示意图;

图3为本发明实施例提供的一种从所述表结构中提取所述待导出属性对应的列中的数据示意图;

图4为本发明实施例提供的一种数据库表结构的导出装置的结构示意图;

图5为本发明实施例提供的一种计算机的部分结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本发明提供了一种数据库表结构的导出方法,参考图1,为本发明实施例提供的一种数据库表结构的导出方法流程图,所述方法具体可以包括:

s101:确定待导出表结构的数据库表,并获取所述数据库表的表结构。

本发明实施例中,为了将数据库中的数据库表的表结构导出,首先确定待导出表结构的数据库表。一种实现方式中,接收用户的输入参数,包括数据库服务器的ip地址、端口、数据库的用户名和密码、数据库名、数据库表名等。利用上述输入参数可以获取待导出表结构的数据库表。

具体的,本发明实施例可以利用上述输入参数生成sql语句,用于获取所述数据库表的表结构。如图2所示,为本发明实施例提供的一种数据库表的表结构的示意图。

s102:确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息。

本发明实施例中,可以根据需求将所述数据表的表结构中的若干属性确定为所述表结构中的待导出属性,并确定所述待导出属性对应的列在所述表结构中的位置信息。

一种实现方式中,为了便于确定所述待导出属性对应的列在所述表结构中的位置信息,本发明实施例预先按照字节识别所述表结构中的字符,并将tab键对应的字符“\t”转换为预设第二标识符,如逗号“,”,分号“;”等,得到由所述第二标识符分割后的表结构。其中,所述第二标识符用于分割表结构。其次,确定所述待导出属性对应的列在所述由所述第二标识符分割后的表结构中的位置信息。

另一种实现方式中,同样是为了便于确定所述待导出属性对应的列在所述表结构中的位置信息,本发明实施例预先将所述表结构复制到文本编辑器中,并按照字节识别所述表结构中的字符,并将字符“|”转换为预设第三标识符,如逗号“,”分号“;”等,得到由所述第三标识符分割后的表结构。其中,所述第三标识符用于分割表结构。然后,确定所述待导出属性对应的列在由所述第三标识符分割后的表结构中的位置信息。

s103:根据所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据。

本发明实施例根据确定的所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据。如图3所示,为本发明实施例提供的从所述表结构中提取所述待导出属性对应的列中的数据示意图,其中,待导出属性为列名、描述、类型、主键。

s104:利用预设第一标识符将提取到的数据进行拼接后,存储为csv文件。

由于将数据库表的表结构导出的目的一般是用于对文档内容的填充,但是,直接将利用sql语句获取的数据库表结构中的数据填充到文档中,会存在格式问题,如数据库表中的各个列的数据混淆等。所以,本发明实施例需要对从所述表结构中提取到的所述待导出属性对应的列中的数据进行格式的处理。

由于在将数据存储为csv(comma-separatedvalues,又称为“字符分割值”)文件时,可以将数据中包含的第一标识符转换为表格,即所述第一标识符为存储csv文件时被识别为能够转换成表格的标识符。所以,为了将提取到的数据成功存储为csv文件,本发明实施例利用第一标识符,如逗号“,”将提取到的数据进行依次拼接,并将拼接后的数据存储为csv文件。其中,在将拼接后的数据存储为csv文件的过程中,系统将所述第一标识符识别为能够转换成表格的标识符,从而得到的csv文件存储有表格数据。由于csv文件是以纯文本形式存储表格数据,所以,可以将所述csv文件中存储的数据直接复制到文档中,以填充文档中的内容,不会存在格式问题。

本发明实施例提供的数据库表结构导出方法中,首先确定待导出表结构的数据库表,并获取所述数据库表的表结构。其次,确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息。再次,根据所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据。最后,利用预设第一标识符将提取到的数据进行拼接后,存储为csv文件。本发明能够自动化的将数据库表结构导出,效率较高且避免出错。

本发明实施例还提供了一种数据库表结构的导出装置,参考图4,为本发明实施例提供的一种数据库表结构的导出装置的示意图,所述装置包括:

获取模块401,用于确定待导出表结构的数据库表,并获取所述数据库表的表结构;

确定模块402,用于确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息;

提取模块403,用于根据所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据;

存储模块404,用于利用预设第一标识符将提取到的数据进行拼接后,存储为csv文件。

一种实现方式中,所述装置还包括:

第一转换模块,用于按照字节识别所述表结构中的字符,并将tab键对应的字符“\t”转换为预设第二标识符,得到由所述第二标识符分割后的表结构;

相应的,所述确定模块,具体用于:

确定所述表结构中的待导出属性对应的列,在由所述第二标识符分割后的表结构中的位置信息。

另一种实现方式中,所述装置还包括:

第一复制模块,用于将所述表结构复制到文本编辑器中;

第二转换模块,用于按照字节识别所述表结构中的字符,并将字符“|”转换为预设第三标识符,得到由所述第三标识符分割后的表结构;

相应的,所述确定模块,具体用于:

确定所述表结构中的待导出属性对应的列,在由所述第三标识符分割后的表结构中的位置信息。

实际应用中,所述装置还可以包括:

第二复制模块,用于将所述csv文件中存储的数据直接复制到文档。

本发明实施例提供的数据库表结构导出装置能够实现以下功能:确定待导出表结构的数据库表,并获取所述数据库表的表结构。确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息。根据所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据。利用预设第一标识符将提取到的数据进行拼接后,存储为csv文件。本发明能够自动化的将数据库表结构导出,效率较高且避免出错。

相应的,本发明实施例还提供一种计算机,参见图5所示,可以包括:

处理器501、存储器502、输入装置503和输出装置504。浏览器服务器中的处理器501的数量可以一个或多个,图5中以一个处理器为例。在本发明的一些实施例中,处理器501、存储器502、输入装置503和输出装置504可通过总线或其它方式连接,其中,图5中以通过总线连接为例。

存储器502可用于存储软件程序以及模块,处理器501通过运行存储在存储器502的软件程序以及模块。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入装置503可用于接收输入的数字或字符信息,以及产生与浏览器服务器的用户设置以及功能控制有关的键信号输入。

具体在本实施例中,处理器501会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现各种功能:

确定待导出表结构的数据库表,并获取所述数据库表的表结构;

确定所述表结构中的待导出属性对应的列在所述表结构中的位置信息;

根据所述位置信息,从所述表结构中提取所述待导出属性对应的列中的数据;

利用预设第一标识符将提取到的数据进行拼接后,存储为csv文件。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明实施例所提供的一种数据库表结构的导出方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1