CN114896254A - 基于Python的数据库设计文档生成方法、装置、设备及介质 - Google Patents
基于Python的数据库设计文档生成方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114896254A CN114896254A CN202210648476.0A CN202210648476A CN114896254A CN 114896254 A CN114896254 A CN 114896254A CN 202210648476 A CN202210648476 A CN 202210648476A CN 114896254 A CN114896254 A CN 114896254A
- Authority
- CN
- China
- Prior art keywords
- database
- document
- generating
- data
- python
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000013461 design Methods 0.000 title claims abstract description 29
- 238000004806 packaging method and process Methods 0.000 claims abstract description 11
- 230000004044 response Effects 0.000 claims abstract description 9
- 238000012360 testing method Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000009795 derivation Methods 0.000 claims 1
- 238000004891 communication Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
- G06F40/18—Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/258—Heading extraction; Automatic titling; Numbering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种基于Python的数据库设计文档生成方法、装置、设备及介质,应用于数据库技术领域,其方法包括:获取待连接数据库的数据库类型,基于所述数据库类型Python连接所述待连接数据库;获取已连接的待连接数据库的数据库信息,基于所述数据库信息封装成结构化数据;获取预设文档框架,基于所述预设文档框架和所述数据化结构生成文档模板;响应于数据库文档导出指令,基于所述结构化数据和所述文档模板生成数据库文档。本申请具有提高数据库文档生成的普适性的效果。
Description
技术领域
本申请涉及数据库的技术领域,尤其是涉及一种基于Python的数据库设计文档生成方法、装置、设备及介质。
背景技术
数据库文档是对整个数据库设计说明的文档,数据库文档详细的描述每张表的字段、类型、长度、说明等信息,数据库文档便于项目的维护以及项目的二次开发,从而降低数据出现错误影响系统稳定的可能性。数据库文档生成技术需要随时在出现需求时一键生成数据库文档,减少设计人员及开发人员手动编写文档的繁琐工作。
目前已有的数据库文档技术为开发人员通过代码生成数据库文档,而不懂代码的设计人员、管理人员及客户无法生成使用,并且需要开发人员根据当前的系统单独搭建集成,与系统的关联性较强,无法做到自适应不同的系统框架。
发明内容
为了提高数据库文档生成的普适性,本申请提供一种基于Python的数据库设计文档生成方法、装置、设备及介质。
第一方面,本申请提供一种基于Python的数据库设计文档生成方法,采用如下的技术方案:
一种基于Python的数据库设计文档生成方法,包括:
获取待连接数据库的数据库类型,基于所述数据库类型Python连接所述待连接数据库;
获取已连接的待连接数据库的数据库信息,基于所述数据库信息封装成结构化数据;
获取预设文档框架,基于所述预设文档框架和所述数据化结构生成文档模板;
响应于数据库文档导出指令,基于所述结构化数据和所述文档模板生成数据库文档。
通过采用上述技术方案,根据待连接数据库的数据库类型使用Python方法连接当前待连接数据库,读取当前已连接的待连接数据库中的数据库信息,将数据库信息封装成便于调用的结构化数据,根据结构化数据的数据内容和固定的预设文档框架生成文档模板,当接收到数据库文档导出指令后,自动根据结构化数据和文档模板生成具有数据内容的数据库文档,其中文档模板具有文档框架的固定模式结构,但文档模板的内容格式根据结构化数据的数据内容自动调整,从而提高数据库文档生成的普适性。
可选的,所述获取待连接数据库的数据库类型,基于所述数据库类型Python连接所述待连接数据库包括:
获取所述待连接数据库的属性值和属性名,基于所述属性名封装所述属性值;
基于所述属性名和所述数据库类型调用封装的属性值。
可选的,所述获取已连接的待连接数据库的数据库信息,基于所述数据库信息封装成结构化数据包括:
获取基于当前所述数据库类型建立的所有所述待连接数据库;
获取所述待连接数据库中的全部数据表;
查询所述全部数据表的表名和表说明,基于所述表名和所述表说明生成第一表格;
获取所述数据表的所有字段信息;
查询所述所有字段信息的列名、默认值、列类型、列长、列备注,基于所述列名、默认值、列类型、列长、列备注生成第二表格;
基于所述第一表格和所述第二表格生成结构化数据。
可选的,所述基于所述预设文档框架和所述数据化结构生成文档模板包括:
基于所述预设文档框架生成文档模板头和文档模板尾;
基于所述预设文档框架、所述第一表格和所述第二表格生成文档模板数据表格;
基于所述文档模板头、所述文档模板数据表格和所述文档模板尾生成文档模板。
可选的,所述响应于数据库文档导出指令,基于所述结构化数据和所述文档模板生成数据库文档包括:
将所述第一表格和所述第二表格中的数据填入所述文档模板的相应位置;
将数据填入后的文档模板作为所述数据库文档。
可选的,在所述响应于数据库文档导出指令之前,还包括:
响应于用户的连接测试点击操作,获取用户输入的连接信息;
判断所述用户输入的连接信息与预设的连接信息是否一致;
若所述用户输入的连接信息与预设的连接信息一致,则生成包括允许生成所述数据库文档的提示信息;
若所述用户输入的连接信息与预设的连接信息不一致,则生成包括禁止生成所述数据库文档的提示信息。
第二方面,本申请提供一种基于Python的数据库设计文档生成装置,采用如下的技术方案:
一种基于Python的数据库设计文档生成装置,包括:
数据库连接模块,用于获取待连接数据库的数据库类型,基于所述数据库类型Python连接所述待连接数据库;
数据生成模块,用于获取已连接的待连接数据库的数据库信息,基于所述数据库信息封装成结构化数据;
模板生成模块,用于获取预设文档框架,基于所述预设文档框架和所述数据化结构生成文档模板;
文档生成模块,用于响应于数据库文档导出指令,基于所述结构化数据和所述文档模板生成数据库文档。
通过采用上述技术方案,根据待连接数据库的数据库类型使用Python方法连接当前待连接数据库,读取当前已连接的待连接数据库中的数据库信息,将数据库信息封装成便于调用的结构化数据,根据结构化数据的数据内容和固定的预设文档框架生成文档模板,当接收到数据库文档导出指令后,自动根据结构化数据和文档模板生成具有数据内容的数据库文档,其中文档模板具有文档框架的固定模式结构,但文档模板的内容格式根据结构化数据的数据内容自动调整,从而提高数据库文档生成的普适性。
第三方面,本申请提供一种电子设备,采用如下的技术方案:
一种电子设备,包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行第一方面任一项所述的基于Python的数据库设计文档生成方法的计算机程序。
第四方面,本申请提供一种计算机可读存储介质,采用如下的技术方案:
一种计算机可读存储介质,存储有能够被处理器加载并执行第一方面任一项所述的基于Python的数据库设计文档生成方法的计算机程序。
附图说明
图1是本申请实施例提供的一种基于Python的数据库设计文档生成方法的流程示意图。
图2是申请实施例提供的一种基于Python的数据库设计文档生成装置的结构框图。
图3是本申请实施例提供的电子设备的结构框图。
具体实施方式
以下结合附图对本申请作进一步详细说明。
图1为本申请实施例提供的一种基于Python的数据库设计文档生成方法的流程示意图。
如图1所示,该方法主要流程描述如下(步骤S101~S104):
步骤S101,获取待连接数据库的数据库类型,基于数据库类型Python连接待连接数据库;
在本实施例中,数据库的连接需要基于Python方法进行连接,因此,待连接数据库的数据库类型需要为支持Python方法连接的数据库。
针对步骤S101,获取待连接数据库的属性值和属性名,基于属性名封装属性值;基于属性名和数据库类型调用封装的属性值。
在本实施例中,属性值包括数据库的IP地址、端口号、用户名、密码、数据库名称、表空间和编码格式等,其中,当待连接数据库只有一个时,在获取当前待连接数据库的表空间时不需要输入表空间的空间名称,当待连接数据库为多个时,在获取当前待连接数据库的表空间是需要输入表空间的空间名称,当前表空间的空间名称与当前待连接数据库的数据库名称一致。
具体的,在连接数据库时使用self. xxx=yyy.connect(属性值);self.cursor =self.postgreSql.cursor()的连接句式,其中,使用self方法封装属性值,self用于将自身封装成一个实体类,self.xxx是指这个实体类中有名一个xxx的属性,属性名xxx可以为任意命名,当其他方法调用本方法的时候可以通过xxx的属性名获取到其中注入的属性值。=yyy.connect中的yyy是数据库的具体方法,须要根据数据库的具体方法来确定,不同的数据库自身规定的操作方法是不同的。
例如,当连接Oracle时,连接句式为self.oracle = cx_Oracle.connect(属性值);self.cursor = self.oracle.cursor(),当连接MySQL时,连接句式为self.mysql =pymysql.connect(属性值);self.cursor = self.mysql.cursor(),当连接postgresql时,连接句式为self.postgreSql= psycopg2.connect(属性值);self.cursor =self.postgreSql.cursor()。需要说明的是,连接不同数据库时xxx和yyy需要根据当前数据库自行设定,在此不做进一步举例说明,其中,属性值包括但不限于上述属性值,在进行封装时,需要根据当前数据库需求自行设置,在此不做具体限定。
步骤S102,获取已连接的待连接数据库的数据库信息,基于数据库信息封装成结构化数据;
针对步骤S102,获取基于当前数据库类型建立的所有待连接数据库;获取待连接数据库中的全部数据表;查询全部数据表的表名和表说明,基于表名和表说明生成第一表格;获取数据表的所有字段信息;查询所有字段信息的列名、默认值、列类型、列长、列备注,基于列名、默认值、列类型、列长、列备注生成第二表格;基于第一表格和第二表格生成结构化数据。
在本实施例中,第一表格和第二表格用于存放由数据表中读取的数据,由数据表中读取的数据为用于生成数据库文档的关键数据,数据表存有大量的表数据,需要将关键数据从大量的表数据中摘取出来,集成为表格,即将表名和表说明集成为第一表格,将字段信息的列名、默认值、列类型、列长、列备注集成为第二表格。其中,表说明为当前数据表的设计说明或者创建说明等。
步骤S103,获取预设文档框架,基于预设文档框架和数据化结构生成文档模板;
针对步骤S103,基于预设文档框架生成文档模板头和文档模板尾;基于预设文档框架、第一表格和第二表格生成文档模板数据表格;基于文档模板头、文档模板数据表格和文档模板尾生成文档模板。
在本实施例中,预设文档框架为固定的数据库文档生成框架,预设文档框架设置数据库文档的段落格式、语言类型、语言字体、段落格式、全局字体样式、文档标题、文档标题格式、表格格式、换页位置、一级标题格式、二级标题格式和段落文本格式等。在预设文档框架中包括至少一个一级标题、至少一个二级标题和至少一个段落文本,其中,一个一级标题包括至少一个二级标题,一个二级标题包括至少一个段落文本。
例如,一级标题1包括二级标题1.1、二级标题1.2、和二级标题1.3,二级标题1.1包括一个段落文本,二级标题1.2包括两个段落文本,二级标题1.3包括一个段落文本,一级标题2包括二级标题2.1、二级标题2.2和二级标题2.3,二级标题2.1包括一个段落文本,二级标题2.2包括两个段落文本,二级标题2.3包括三个段落文本等,在此不做进一步举例说明。
在本实施例中,不同的一级标题的一级标题格式、不同的二级标题的二级标题格式和不同的段落文本的段落文本格式可以不同,例如,一级标题1的一级标题格式为居中,二级标题1.1的二级标题格式为居左,其段落文本的段落文本格式为居左,二级标题1.2的二级标题格式为居右,其段落文本的段落文本格式为居右等,具体的一级标题格式、二级标题格式和段落文本格式需要根据需求自行设置,在此不做具体限定。
在本实施例中,文档模板头和文档模板尾的格式为固定的格式,文档模板数据表格在创建时需要根据第一表格中的表名、表说明添加二级标题,确定二级标题的数量和序号,根据第二表格中的字段信息确定数据表格的行数、列数、样式、表头数据等。
在本实施例中,预设文档框架中包含有数据获取方法代码,数据获取方法的代码为self.documentTable()方法,使用该方法将获取第一表格和第二表格中的数据。
步骤S104,响应于数据库文档导出指令,基于结构化数据和文档模板生成数据库文档。
在本实施例中,文档的导出指令包括直接在main代码页面运行main代码;将该方法包装为工具包集成到软件系统页面中,在系统页面上设置导出按钮,给导出按钮添加点击事件,通过导出按钮和点击事件运行main代码;将该方法包装为exe程序使用Python生成导出页面,在导出页面上设置导出按钮,给导出按钮添加点击事件,通过导出按钮和点击事件运行main代码。
针对步骤S104,将第一表格和第二表格中的数据填入文档模板的相应位置;将数据填入后的文档模板作为数据库文档。
在本实施例中,在接收到文档导出指令后,循环查询第一表格中数据和第二表格中的数据,并将查询到的数据填入到文档模板的相应位置,将填入数据的文档模板作为数据库文档进行打印导出。需要说明的是,在根据第一表格和第二表格中的数据生成文档模板后不需要将第一表格和第二表格中的数据填入文档模板内,需要在接收到文档导出指令后将将第一表格和第二表格中的数据填入文档模板内,从而减小在第一表格和第二表格的数据产生变化后产生大量无用的数据库文档,减小对数据资源的浪费。
在步骤S104之后,响应于用户的连接测试点击操作,获取用户输入的连接信息;判断用户输入的连接信息与预设的连接信息是否一致;若用户输入的连接信息与预设的连接信息一致,则生成包括允许生成数据库文档的提示信息;若用户输入的连接信息与预设的连接信息不一致,则生成包括禁止生成数据库文档的提示信息。
在本实施例中,连接测试设置于exe程序的导出页面上,导出页面包括项目数据库连接名的输入框、数据库类型的选择框、主机名或者数据库IP地址的输入框、数据库端口号的输入框、数据库的数据库名称的输入框、表空间的名称的输入框、用户名的输入框和密码的输入框。用户需要根据需要向上述的输入框中输入相应的数据,在输入数据之后点击连接测试按钮。在接收到用户的连接测试指令后,获取用户输入的数据,判断用户输入的数据是否全部正确,当用户输入的数据全部正确时,生成允许生成数据库文档的提示信息,从而提示用户可以导出数据库文档,当用户输入的数据存在一项错误数据时,生成禁止生成数据库文档的提示信息,并且对错误数据进行提示,其中,错误数据的提示方式包括清除错误数据对应的输入框中的内容、在错误数据对应的输入框后添件亮色提示标识、设置带有错误数据的提示弹窗等任一项或者多项的组合等,在此不做具体限定。
在本实施例中,exe程序的导出页面上还设置有取消按钮,当误触exe程序或无法输入正确的数据时,通过点击取消按钮即可退出导出页面。
图2为申请实施例提供的一种基于Python的数据库设计文档生成装置200的结构框图。
如图2所示,基于Python的数据库设计文档生成装置200主要包括:
数据库连接模块201,用于获取待连接数据库的数据库类型,基于数据库类型Python连接待连接数据库;
数据生成模块202,用于获取已连接的待连接数据库的数据库信息,基于数据库信息封装成结构化数据;
模板生成模块203,用于获取预设文档框架,基于预设文档框架和数据化结构生成文档模板;
文档生成模块204,用于响应于数据库文档导出指令,基于结构化数据和文档模板生成数据库文档。
作为本实施例的一种可选实施方式,数据库连接模块201具体用于获取待连接数据库的属性值和属性名,基于属性名封装属性值;基于属性名和数据库类型调用封装的属性值。
作为本实施例的一种可选实施方式,数据生成模块202具体用于获取基于当前数据库类型建立的所有待连接数据库;获取待连接数据库中的全部数据表;查询全部数据表的表名和表说明,基于表名和表说明生成第一表格;获取数据表的所有字段信息;查询所有字段信息的列名、默认值、列类型、列长、列备注,基于列名、默认值、列类型、列长、列备注生成第二表格;基于第一表格和第二表格生成结构化数据。
作为本实施例的一种可选实施方式,模板生成模块203具体用于基于预设文档框架生成文档模板头和文档模板尾;基于预设文档框架、第一表格和第二表格生成文档模板数据表格;基于文档模板头、文档模板数据表格和文档模板尾生成文档模板。
作为本实施例的一种可选实施方式,文档生成模块204具体用于将第一表格和第二表格中的数据填入文档模板的相应位置;将数据填入后的文档模板作为数据库文档。
作为本实施例的一种可选实施方式,该基于Python的数据库设计文档生成装置200,还包括:
操作响应模块,用于响应于用户的连接测试点击操作,获取用户输入的连接信息;
信息判断模块,用于判断用户输入的连接信息与预设的连接信息是否一致;
第一提示模块,用于生成包括允许生成数据库文档的提示信息;
第二提示模块,用于生成包括禁止生成数据库文档的提示信息。
在一个例子中,以上任一装置中的模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个专用集成电路(application specificintegratedcircuit,ASIC),或,一个或多个数字信号处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA),或这些集成电路形式中至少两种的组合。
再如,当装置中的模块可以通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,CPU)或其它可以调用程序的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图3为本申请实施例提供的电子设备300的结构框图。
如图3所示,电子设备300包括处理器301和存储器302,还可以进一步包括信息输入/信息输出(I/O)接口303、通信组件304中的一种或多种以及通信总线305。
其中,处理器301用于控制电子设备300的整体操作,以完成上述的基于Python的数据库设计文档生成方法的全部或部分步骤;存储器302用于存储各种类型的数据以支持在电子设备300的操作,这些数据例如可以包括用于在该电子设备300上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器302可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random AccessMemory,SRAM)、电可擦除可编程只读存储器(Electrically Erasable ProgrammableRead-Only Memory,EEPROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、只读存储器(Read-Only Memory,ROM)、磁存储器、快闪存储器、磁盘或光盘中的一种或多种。
I/O接口303为处理器301和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件304用于电子设备300与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(NearField Communication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件104可以包括:Wi-Fi部件,蓝牙部件,NFC部件。
电子设备300可以被一个或多个应用专用集成电路 (Application SpecificIntegrated Circuit,简称ASIC)、数字信号处理器(Digital Signal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field ProgrammableGate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例给出的基于Python的数据库设计文档生成方法。
通信总线305可包括一通路,在上述组件之间传送信息。通信总线305可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA (ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。通信总线305可以分为地址总线、数据总线、控制总线等。
电子设备300可以包括但不限于移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端,还可以为服务器等。
本申请还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述的基于Python的数据库设计文档生成方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器 (R ead-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的申请范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离前述申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中申请的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (9)
1.一种基于Python的数据库设计文档生成方法,其特征在于,包括:
获取待连接数据库的数据库类型,基于所述数据库类型Python连接所述待连接数据库;
获取已连接的待连接数据库的数据库信息,基于所述数据库信息封装成结构化数据;
获取预设文档框架,基于所述预设文档框架和所述数据化结构生成文档模板;
响应于数据库文档导出指令,基于所述结构化数据和所述文档模板生成数据库文档。
2.根据权利要求1所述的方法,其特征在于,所述获取待连接数据库的数据库类型,基于所述数据库类型Python连接所述待连接数据库包括:
获取所述待连接数据库的属性值和属性名,基于所述属性名封装所述属性值;
基于所述属性名和所述数据库类型调用封装的属性值。
3.根据权利要求2所述的方法,其特征在于,所述获取已连接的待连接数据库的数据库信息,基于所述数据库信息封装成结构化数据包括:
获取基于当前所述数据库类型建立的所有所述待连接数据库;
获取所述待连接数据库中的全部数据表;
查询所述全部数据表的表名和表说明,基于所述表名和所述表说明生成第一表格;
获取所述数据表的所有字段信息;
查询所述所有字段信息的列名、默认值、列类型、列长、列备注,基于所述列名、默认值、列类型、列长、列备注生成第二表格;
基于所述第一表格和所述第二表格生成结构化数据。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述基于所述预设文档框架和所述数据化结构生成文档模板包括:
基于所述预设文档框架生成文档模板头和文档模板尾;
基于所述预设文档框架、所述第一表格和所述第二表格生成文档模板数据表格;
基于所述文档模板头、所述文档模板数据表格和所述文档模板尾生成文档模板。
5.根据权利要求4所述的方法,其特征在于,所述响应于数据库文档导出指令,基于所述结构化数据和所述文档模板生成数据库文档包括:
将所述第一表格和所述第二表格中的数据填入所述文档模板的相应位置;
将数据填入后的文档模板作为所述数据库文档。
6.根据权利要求5所述的方法,其特征在于,在所述响应于数据库文档导出指令之前,还包括:
响应于用户的连接测试点击操作,获取用户输入的连接信息;
判断所述用户输入的连接信息与预设的连接信息是否一致;
若所述用户输入的连接信息与预设的连接信息一致,则生成包括允许生成所述数据库文档的提示信息;
若所述用户输入的连接信息与预设的连接信息不一致,则生成包括禁止生成所述数据库文档的提示信息。
7.一种基于Python的数据库设计文档生成装置,其特征在于,包括:
数据库连接模块,用于获取待连接数据库的数据库类型,基于所述数据库类型Python连接所述待连接数据库;
数据生成模块,用于获取已连接的待连接数据库的数据库信息,基于所述数据库信息封装成结构化数据;
模板生成模块,用于获取预设文档框架,基于所述预设文档框架和所述数据化结构生成文档模板;
文档生成模块,用于响应于数据库文档导出指令,基于所述结构化数据和所述文档模板生成数据库文档。
8.一种电子设备,其特征在于,包括存储器和处理器,所述存储器上存储有能够被所述处理器加载并执行如权利要求1至6中任一种所述的基于Python的数据库设计文档生成方法的计算机程序。
9.一种计算机可读存储介质,其特征在于,存储有能够被处理器加载并执行如权利要求1至6中任一种所述的基于Python的数据库设计文档生成方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210648476.0A CN114896254A (zh) | 2022-06-09 | 2022-06-09 | 基于Python的数据库设计文档生成方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210648476.0A CN114896254A (zh) | 2022-06-09 | 2022-06-09 | 基于Python的数据库设计文档生成方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114896254A true CN114896254A (zh) | 2022-08-12 |
Family
ID=82727696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210648476.0A Pending CN114896254A (zh) | 2022-06-09 | 2022-06-09 | 基于Python的数据库设计文档生成方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114896254A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1109117A1 (en) * | 1999-12-14 | 2001-06-20 | Sun Microsystems, Inc. | Method for converting table data between a database representation and a representation in tag language |
CN111241800A (zh) * | 2020-01-17 | 2020-06-05 | 深圳震有科技股份有限公司 | MySQL数据库表结构文档的生成方法、存储介质及智能终端 |
CN114021529A (zh) * | 2021-11-08 | 2022-02-08 | 北京国腾联信科技有限公司 | 数据库表结构文档的生成方法及装置 |
-
2022
- 2022-06-09 CN CN202210648476.0A patent/CN114896254A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1109117A1 (en) * | 1999-12-14 | 2001-06-20 | Sun Microsystems, Inc. | Method for converting table data between a database representation and a representation in tag language |
CN111241800A (zh) * | 2020-01-17 | 2020-06-05 | 深圳震有科技股份有限公司 | MySQL数据库表结构文档的生成方法、存储介质及智能终端 |
CN114021529A (zh) * | 2021-11-08 | 2022-02-08 | 北京国腾联信科技有限公司 | 数据库表结构文档的生成方法及装置 |
Non-Patent Citations (1)
Title |
---|
高雅荣: "《JSP Web技术及应用教程》", 31 January 2019 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109558575B (zh) | 在线表格编辑方法、装置、计算机设备及存储介质 | |
CN110196971A (zh) | 在线文档编辑方法、装置、终端设备及存储介质 | |
CN107015804B (zh) | 一种通过配置api快速开发项目的方法及系统 | |
CN111797073A (zh) | 数据库管理方法、电子设备与计算机可读存储介质 | |
CN111813680B (zh) | 测试脚本的生成方法、装置、计算机设备和存储介质 | |
CN114090671A (zh) | 数据导入方法、装置、电子设备及存储介质 | |
CN110362630B (zh) | 数据管理方法、装置、设备与计算机可读存储介质 | |
CN109429260B (zh) | 一种北向数据的校验方法及装置 | |
CN110688315A (zh) | 接口代码检测报告生成方法、电子装置及存储介质 | |
CN114896254A (zh) | 基于Python的数据库设计文档生成方法、装置、设备及介质 | |
CN110990000A (zh) | Mvc模式设计模型层的数据请求处理方法、装置及设备 | |
CN108196921B (zh) | 单据开发方法、装置、计算机设备和存储介质 | |
KR20190080981A (ko) | 정보 표시 방법, 단말 및 서버 | |
CN115033592A (zh) | 基于数据库的sql语句处理方法、装置、设备及存储介质 | |
CN113822025A (zh) | 办公文件自动生成方法、装置、设备及存储介质 | |
CN109840080B (zh) | 字符属性比较方法、装置、存储介质及电子设备 | |
CN111562907A (zh) | 自定义接口数据的转换方法与系统 | |
CN108733353B (zh) | 一种界面构造方法和装置 | |
US11847405B1 (en) | Encoding hyperlink data in a printed document | |
CN116049293B (zh) | 基于数据库配置实现解析csv文件方法、装置、设备及介质 | |
CN113377712B (zh) | 埋点数据查询方法、装置、设备及计算机可读存储介质 | |
CN115659406B (zh) | 一种数据访问方法 | |
CN115904376A (zh) | 使用json配置动态表单实现数据填报的通用方法 | |
CN115964589A (zh) | 基于数据交换协议的界面生成方法、装置、设备及介质 | |
CN114880306A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220812 |
|
RJ01 | Rejection of invention patent application after publication |