CN112380239A - 脚本生成方法、装置、设备及存储介质 - Google Patents
脚本生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112380239A CN112380239A CN202011282953.3A CN202011282953A CN112380239A CN 112380239 A CN112380239 A CN 112380239A CN 202011282953 A CN202011282953 A CN 202011282953A CN 112380239 A CN112380239 A CN 112380239A
- Authority
- CN
- China
- Prior art keywords
- configuration
- database
- data table
- script
- key
- 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
- 238000013515 script Methods 0.000 title claims abstract description 171
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000012986 modification Methods 0.000 claims abstract description 73
- 230000004048 modification Effects 0.000 claims abstract description 73
- 238000010276 construction Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 6
- 238000012827 research and development Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001052 transient effect Effects 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/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- 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
- G06F16/2453—Query optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及研发管理领域,公开了一种脚本生成方法、装置、设备及存储介质。所述脚本生成方法包括:分别读取预置数据库中各数据表的配置键及各配置键对应的配置值;根据配置键和配置值,构建各数据表对应的数据库脚本模板的配置文件;根据获取的目标数据库中目标数据表的修改需求信息,修改目标数据表对应的配置文件,得到目标数据表对应的配置文件的变动配置键以及对应的配置值;根据变动配置键及对应的配置值,确定修改数据库中目标数据表对应的数据库脚本模板;将变动配置键及对应的配置值替换至数据库脚本模板中,得到目标数据库脚本。本发明通过对脚本模板的处理,可以按具体的修改需求生成对应的脚本,使脚本的编写更便捷高效。
Description
技术领域
本发明涉及研发管理领域,尤其涉及一种脚本生成方法、装置、设备及存储介质。
背景技术
随着互联网技术的发展,越来越多的应用程序利用数据库来存储海量的数据,随着应用程序体量的增大,对数据库数据的处理脚本也越来越多,这些脚本和应用程序的代码一般由程序员统一管理和开发,程序员针对不同的业务开发不同的脚本。
在实际应用中,配置化程度越高的系统,脚本编写的工作就越繁重。而且脚本代码均由程序员人工编写,加上脚本代码的测试方式少,验证往往不够充分,容易造成难以避免的人为错误。在开发过程中,大部分的脚本代码,都是对数据的增删改查,这也造成了脚本代码的相似度较高,编写时重复性的工作较多。
发明内容
本发明的主要目的在于解决脚本编写效率低的技术问题。
本发明第一方面提供了一种脚本生成方法,包括:
分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值;
根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件;
获取所述目标数据库中目标数据表的修改需求信息;
根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值;
根据所述变动配置键及所述变动配置键对应的配置值,确定修改所述数据库中所述目标数据表对应的数据库脚本模板;
将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本。
可选的,在本发明第一方面的第一种实现方式中,所述分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值之前,还包括:
接收数据库操作请求,其中,所述数据库操作请求包括:用户信息和数据库操作类型;
根据所述用户信息,获取用户账户的权限信息,其中,所述权限信息包括角色权限信息及操作权限信息;
根据所述权限信息、所述数据库操作类型以及预置操作权限表,判断所述用户账户是否有操作权限;
若是,则执行所述数据库操作类型对应的操作,否则不响应所述数据库操作请求。
可选的,在本发明第一方面的第二种实现方式中,所述分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值包括:
分别读取预置数据库中各数据表的表名信息;
根据所述表名信息,获取各数据表的所有配置键及所述配置键对应的配置值。
可选的,在本发明第一方面的第三种实现方式中,所述根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件包括:
新建预置格式的多个空白配置文件,其中,所述空白配置文件包括配置键字段及配置值字段;
根据所述配置键字段和所述配置值字段,将所述配置键及所述配置值对应填充至所述各空白配置文件中,得到各数据表对应的数据库脚本模板的配置文件。
可选的,在本发明第一方面的第四种实现方式中,所述修改需求信息包括:目标数据表的表名和修改操作的类型以及所述修改操作对应的修改内容,所述根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值包括:
根据所述目标数据表的表名,获取目标数据表对应的配置文件;
根据所述修改操作的类型以及所述修改操作对应的修改内容,对所述目标数据表对应的配置文件执行修改操作;
将所述目标数据表对应的配置文件中修改的配置键及配置值,分别定义为变动配置键和变动配置值。
可选的,在本发明第一方面的第五种实现方式中,其特征在于,在所述分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值之前,还包括:
对预置数据库中各数据表数据进行建模,生成对应的数据字典;
根据所述数据字典,生成各数据表中各数据对应的数据类型条件限制集合。
可选的,在本发明第一方面的第六种实现方式中,在所述将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本之前,还包括:
获取所述变动配置键及所述变动配置键对应的配置值的变动数据类型信息;
判断所述变动数据类型信息是否符合所述数据类型条件限制集合中对应的数据类型限制条件,若符合,则将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,否则输出数据类型错误提示信息。
本发明第二方面提供了一种脚本生成装置,包括:
读取模块,用于分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值;
构建模块,用于根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件;
第一获取模块,用于获取所述目标数据库中目标数据表的修改需求信息;
修改模块,用于根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值;
确定模块,用于根据所述变动配置键及所述变动配置键对应的配置值,确定修改所述数据库中所述目标数据表对应的数据库脚本模板;
替换模块,用于将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本。
可选的,在本发明第二方面的第一种实现方式中,所述脚本生成装置还包括:
接收模块,用于接收数据库操作请求,其中,所述数据库操作请求包括:用户信息和数据库操作类型;
第二获取模块,用于根据所述用户信息,获取用户账户的权限信息,其中,所述权限信息包括角色权限信息及操作权限信息;
第一判断模块,用于根据所述权限信息、所述数据库操作类型以及预置操作权限表,判断所述用户账户是否有操作权限;
执行模块,用于执行所述数据库操作类型对应的操作,否则不响应所述数据库操作请求。
可选的,在本发明第二方面的第二种实现方式中,所述读取模块具体用于:
分别读取预置数据库中各数据表的表名信息;
根据所述表名信息,获取各数据表的所有配置键及所述配置键对应的配置值。
可选的,在本发明第二方面的第三种实现方式中,所述构建模块具体用于:
新建预置格式的多个空白配置文件,其中,所述空白配置文件包括配置键字段及配置值字段;
根据所述配置键字段和所述配置值字段,将所述配置键及所述配置值对应填充至所述各空白配置文件中,得到各数据表对应的数据库脚本模板的配置文件。
可选的,在本发明第二方面的第四种实现方式中,所述修改模块具体用于:
根据所述目标数据表的表名,获取目标数据表对应的配置文件;
根据所述修改操作的类型以及所述修改操作对应的修改内容,对所述目标数据表对应的配置文件执行修改操作;
将所述目标数据表对应的配置文件中修改的配置键及配置值,分别定义为变动配置键和变动配置值。
可选的,在本发明第二方面的第五种实现方式中,所述脚本生成装置还包括:
建模模块,用于对预置数据库中各数据表数据进行建模,生成对应的数据字典;
生成模块,用于根据所述数据字典,生成各数据表中各数据对应的数据类型条件限制集合。
可选的,在本发明第二方面的第六种实现方式中,所述脚本生成装置还包括:
第三获取模块,用于获取所述变动配置键及所述变动配置键对应的配置值的变动数据类型信息;
第二判断模块,用于判断所述变动数据类型信息是否符合所述数据类型条件限制集合中对应的数据类型限制条件,若符合,则将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,否则输出数据类型错误提示信息。
本发明第三方面提供了一种脚本生成设备,包括:存储器和至少一个处理器,所述存储器中存储有指令;所述至少一个处理器调用所述存储器中的所述指令,以使得所述脚本生成设备执行上述的脚本生成方法。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的脚本生成方法。
本发明提供的技术方案中,首先读取数据库中各数据表的配置键及对应的配置值,并构建各数据表脚本模板对应的配置文件。然后再通过获取到的目标数据表的修改需求,得到变动后的配置键及对应的配置值,最后将变动后的配置键对应的配置值替换至对应数据表的脚本模板中,就能得到目标脚本。本发明通过对脚本模板的处理,可以按具体的修改需求生成对应的脚本,使脚本的编写更便捷高效。
附图说明
图1为本发明实施例中脚本生成方法的第一个实施例示意图;
图2为本发明实施例中脚本生成方法的第二个实施例示意图;
图3为本发明实施例中脚本生成方法的第三个实施例示意图;
图4为本发明实施例中脚本生成装置的一个实施例示意图;
图5为本发明实施例中脚本生成设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种脚本生成方法、装置、设备及存储介质。本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中脚本生成方法的第一个实施例包括:
101、分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值;
可以理解的是,本发明的执行主体可以为脚本生成装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
在本实施例中,所有数据都可以认为是由键跟值组成,一个配置键对应一个唯一的配置值,当用户需要修改某一个配置值时,需要找到该配置值对应的配置键,通过配置键匹配对应的配置值,从而进行数据的修改。
在本实施例中,数据库中的数据是按照键跟值一一对应的方式存储的,当用户需要修改某一个数据时,需要找到该数据所在的数据库表格,再在该表格中匹配目标值。因此,本实施例通过读取目标数据库中的各数据表来获取数据的键跟值信息。优选的,本实施例读取数据库数据表的方式是通过数据库查询语句获取到所有数据表的表名,再通过表名查询各数据表对应的配置键及配置值。
可选的,在一实施例中,步骤101包括:分别读取预置数据库中各数据表的表名信息;根据所述表名信息,获取各数据表的所有配置键及所述配置键对应的配置值。
102、根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件;
在本实施例中,为了对数据库中各数据表信息进行相应的操作并生成对应的脚本,需要先将各数据表的信息提取出来,通过脚本模板与修改信息的结合,即可得到目标脚本。本实施例中,获得数据库中各数据表的配置键跟对应的配置值之后,将获得的数据统一存储到对应的配置文件中,其中配置文件的格式具有预置的格式。另外,数据的保存形式未做限定,例如可以是以行列的形式存储,也可以是以JSON对象的形式存储。
在本实施例中,每一个构建出来的配置文件都有一个与之对应的数据库脚本模板,其中数据库脚本模板是通过对该数据库所有的脚本进行特征提取总结出来的结果,是一个通用的模板库,通过脚本模板与修改信息的结合,就能得到目标脚本,大大地减少了脚本代码的编写工作,从而提高了工作效率。
在本实施例中,在构建各数据表对应的数据库脚本模板的配置文件之前,先新建多个空白配置文件,将各空白配置文件以各对应数据表的表名来命名,以作为各配置表是识别信息。重命名之后,将获取到的各数据表中所有的配置键及配置值按一定的格式填充至对应的空白配置文件中,从而得到各数据表对应的数据库脚本模板的配置文件。
可选的,在一实施例中,步骤102包括:新建预置格式的多个空白配置文件,其中,所述空白配置文件包括配置键字段及配置值字段;根据所述配置键字段和所述配置值字段,将所述配置键及所述配置值对应填充至所述各空白配置文件中,得到各数据表对应的数据库脚本模板的配置文件。
在本实施例中,在构建配置文件之前,需要新建空白配置文件用户存储配置内容,空白配置文件中包括了配置键字段和配置值字段,将数据库中各数据表对应的配置键和配置值填充至配置文件对应的字段中,即能得到各数据表对应的数据库脚本模板的配置文件。其中配置文件的格式及配置字段的格式未做限定,例如可以是一个EXCEL表中的两列数据,配置键为一列,配置值为一列。本实施例通过新建初始配置文件,将数据表的内容填充至配置文件中,得到各数据表对应的数据库脚本模板的配置文件,从而进行进一步的修改。
103、获取所述目标数据库中目标数据表的修改需求信息;
在本实施例中,通过获取目标数据表的修改需求信息,从而确定相应的修改操作,进一步确定模板数据库脚本。其中修改需求信息的获取方式未做限定,例如可以是从另外一个程序中读取到的数据,也可以是人为在EXCEL表格中编辑的数据,或者是通过命令行的形式得到的数据。
在本实施例中,修改需求信息中包括了用户要修改的数据表的表名、修改操作的类型以及修改操作对应的修改内容。其中表名的作用是定位到具体的数据表;修改操作的类型:例如增加一条数据、删掉一条数据;修改操作对应的修改内容:对应地,增加一条数据的内容,删掉一条数据的内容。得到这些修改需求信息之后,就能进一步确定修改操作对应的脚本。
104、根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值;
在本实施例中,获取到相应的修改需求信息之后,对对应的配置文件进行修改,并记录被修改的配置键与对应的配置值,例如:删除了{userId:123},其中userId即为变动配置键,123即为变动配置值。通过对变动信息的整合,能进一步确定数据库脚本信息。例如删除了多条userId,那么相应的便生成多条删除userId的脚本,此过程为全自动化程序,极大地减少了人工工作量,提高了生产效率。
在本实施例中,修改需求信息中包括了目标数据表的表名、修改操作的类型以及修改内容,例如,用户需要删掉“接口开关配置表”中的“申请接口”,这是一条完整的修改需求信息,其中“接口开关配置表”为目标数据表的表名,删掉为修改操作的类型,修改内容为“申请接口”对应的配置值。获取到修改需求信息后,修改配置文件中相应的内容,得到修改后的内容,就能进一步确定目标脚本。
可选的,在一实施例中,所述修改需求信息包括:目标数据表的表名和修改操作的类型以及所述修改操作对应的修改内容,步骤104包括:
根据所述目标数据表的表名,获取目标数据表对应的配置文件;
根据所述修改操作的类型以及所述修改操作对应的修改内容,对所述目标数据表对应的配置文件执行修改操作;
将所述目标数据表对应的配置文件中修改的配置键及配置值,分别定义为变动配置键和变动配置值。
105、根据所述变动配置键及所述变动配置键对应的配置值,确定修改所述数据库中所述目标数据表对应的数据库脚本模板;
106、将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本。
在本实施例中,将变动的内容替换至数据库脚本模板的指定内容中,即能得到模板数据库脚本。例如用户需要批量删除“用户表”中的多个用户信息,在配置表中得到要删除的对象信息后,将对象信息中的配置键及配置值替换至数据库脚本对应配置表的变量信息,即可得到多条删除脚本语句。将对应的脚本语句用户实际生产中,即可达到预期的脚本目标,此过程为全自动化生成,未涉及到代码的编写工作,让非技术人员也能实现。
本发明实施例中,首先读取数据库中各数据表的配置键及对应的配置值,并构建各数据表脚本模板对应的配置文件。然后再通过获取到的目标数据表的修改需求,得到变动后的配置键及对应的配置值,最后将变动后的配置键对应的配置值替换至对应数据表的脚本模板中,就能得到目标脚本。本发明通过对脚本模板的处理,可以按具体的修改需求生成对应的脚本,使脚本的编写更便捷高效。
请参阅图2,本发明实施例中脚本生成方法的第二个实施例包括:
201、接收数据库操作请求,其中,所述数据库操作请求包括:用户信息和数据库操作类型;
202、根据所述用户信息,获取用户账户的权限信息,其中,所述权限信息包括角色权限信息及操作权限信息;
203、根据所述权限信息、所述数据库操作类型以及预置操作权限表,判断所述用户账户是否有操作权限;
204、若是,则执行所述数据库操作类型对应的操作,否则不响应所述数据库操作请求。
在本实施例中,由于该脚本生产工具涉及到操作数据库的内容,考虑到数据库内容的安全性问题,在生成脚本之前做用户权限确认是必要的。当接收到数据库操作请求时,获取当前用户的权限信息及操作类型,并查询预置的操作权限表来判段当前用户是否有该数据库的操作权限,当权限验证通过之后,方能进行相应的数据库操作,否则将退出该次请求,不响应该次操作请求。
在本实施例中,用户信息可能包括账号密码,或其它能确认当前用户身份信息的内容,例如人脸识别获取到的ID信息,本实施例不做限定,预置用户表中存有相应的用户身份信息。其中预置用户表的来源未做限定,例如可以是通过注册页面注册的用户,可以是通过脚本语句直接添加的用户,也可以是通过其它程序获取的用户。另外,数据库操作类型是指对某一数据表数据的操作类型,例如对“接口配置表”的数据进行查询。对于所有的用户操作都将记录响应的操作内容至用户操作日志中,便于追溯数据的操作历史记录。
205、分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值;
206、根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件;
207、获取所述目标数据库中目标数据表的修改需求信息;
208、根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值;
209、根据所述变动配置键及所述变动配置键对应的配置值,确定修改所述数据库中所述目标数据表对应的数据库脚本模板;
210、将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本。
本发明实施例中,在接收到数据库操作请求后,对用户的权限信息进行校验,包括校验用户信息及操作类型,通过预置操作权限表查询当前用户是否具有对应的操作权限,从而提高数据库数据的安全性。
请参阅图3,本发明实施例中脚本生成方法的第三个实施例包括:
301、对预置数据库中各数据表数据进行建模,生成对应的数据字典;
302、根据所述数据字典,生成各数据表中各数据对应的数据类型条件限制集合;
303、分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值;
304、根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件;
305、获取所述目标数据库中目标数据表的修改需求信息;
306、根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值;
307、根据所述变动配置键及所述变动配置键对应的配置值,确定修改所述数据库中所述目标数据表对应的数据库脚本模板;
308、获取所述变动配置键及所述变动配置键对应的配置值的变动数据类型信息;
309、判断所述变动数据类型信息是否符合所述数据类型条件限制集合中对应的数据类型限制条件,若符合,则将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,否则输出数据类型错误提示信息;
在本实施例中,通过预先生成的数据库数据字典对应的数据类型条件限制集合,来进一步限制变动的数据对应的数据类型是否符合条件,从而保证了数据的规范性,避免错误数据造成的连锁问题。此步骤在生成目标脚本之前进行判断,若发现数据类型错误,则将对应的错误信息及正确的数据类型提示返回给用户,便于用户及时发现错误并改正。
在本实施例中,数据字典是指是描述数据的信息集合,是对系统中使用的所有数据元素的定义的集合。通过对各数据表数据进行建模计算即可得出。提取数据字典中的字段名及对应的数据类型,生成各数据表中各配置键对应的配置值的数据类型条件限制集合,通过这个集合中数据类型与变动数据的数据类型进行比对,即能得知变动的数据类型是否符合原始数据的数据类型条件,从而确定是否允许生成对应的脚本语句。
310、将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本。
本实施例中,首先对数据库中各数据表进行建模,得到对应的数据字典,提取数据字典中的各数据类型限制条件,在生成目标脚本之前,对变动的配置信息进行数据类型判断,符合数据字典中的数据类型限制条件的情况下,才允许生成目标脚本,本实施例能避免数据类型错误所带来的一些不可预估的后果,提高了数据的安全性。
上面对本发明实施例中脚本生成方法进行了描述,下面对本发明实施例中脚本生成装置进行描述,请参阅图4,本发明实施例中脚本生成装置一个实施例包括:
读取模块401,用于分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值;
构建模块402,用于根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件;
第一获取模块403,用于获取所述目标数据库中目标数据表的修改需求信息;
修改模块404,用于根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值;
确定模块405,用于根据所述变动配置键及所述变动配置键对应的配置值,确定修改所述数据库中所述目标数据表对应的数据库脚本模板;
替换模块406,用于将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本。
可选的,在一实施例中,所述脚本生成装置还包括:
接收模块,用于接收数据库操作请求,其中,所述数据库操作请求包括:用户信息和数据库操作类型;
第二获取模块,用于根据所述用户信息,获取用户账户的权限信息,其中,所述权限信息包括角色权限信息及操作权限信息;
第一判断模块,用于根据所述权限信息、所述数据库操作类型以及预置操作权限表,判断所述用户账户是否有操作权限;
执行模块,用于执行所述数据库操作类型对应的操作,否则不响应所述数据库操作请求。
可选的,在一实施例中,所述读取模块401具体用于:
分别读取预置数据库中各数据表的表名信息;
根据所述表名信息,获取各数据表的所有配置键及所述配置键对应的配置值。
可选的,在一实施例中,所述构建模块402具体用于:
新建预置格式的多个空白配置文件,其中,所述空白配置文件包括配置键字段及配置值字段;
根据所述配置键字段和所述配置值字段,将所述配置键及所述配置值对应填充至所述各空白配置文件中,得到各数据表对应的数据库脚本模板的配置文件。
可选的,在一实施例中,所述修改模块404具体用于:
根据所述目标数据表的表名,获取目标数据表对应的配置文件;
根据所述修改操作的类型以及所述修改操作对应的修改内容,对所述目标数据表对应的配置文件执行修改操作;
将所述目标数据表对应的配置文件中修改的配置键及配置值,分别定义为变动配置键和变动配置值。
可选的,在一实施例中,所述脚本生成装置还包括:
建模模块,用于对预置数据库中各数据表数据进行建模,生成对应的数据字典;
生成模块,用于根据所述数据字典,生成各数据表中各数据对应的数据类型条件限制集合。
可选的,在一实施例中,所述脚本生成装置还包括:
第三获取模块,用于获取所述变动配置键及所述变动配置键对应的配置值的变动数据类型信息;
第二判断模块,用于判断所述变动数据类型信息是否符合所述数据类型条件限制集合中对应的数据类型限制条件,若符合,则将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,否则输出数据类型错误提示信息。
本发明实施例中,首先读取数据库中各数据表的配置键及对应的配置值,并构建各数据表脚本模板对应的配置文件。然后再通过获取到的目标数据表的修改需求,得到变动后的配置键及对应的配置值,最后将变动后的配置键对应的配置值替换至对应数据表的脚本模板中,就能得到目标脚本。本发明通过对脚本模板的处理,可以按具体的修改需求生成对应的脚本,使脚本的编写更便捷高效。
上面图4从模块化功能实体的角度对本发明实施例中的脚本生成装置进行详细描述,下面从硬件处理的角度对本发明实施例中脚本生成设备进行详细描述。
图5是本发明实施例提供的一种脚本生成设备的结构示意图,该脚本生成设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(centralprocessing units,CPU)510(例如,一个或一个以上处理器)和存储器520,一个或一个以上存储应用程序533或数据532的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器520和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对脚本生成设备500中的一系列指令操作。更进一步地,处理器510可以设置为与存储介质530通信,在脚本生成设备500上执行存储介质530中的一系列指令操作。
脚本生成设备500还可以包括一个或一个以上电源540,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口560,和/或,一个或一个以上操作系统531,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图5示出的脚本生成设备结构并不构成对脚本生成设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种脚本生成设备,所述脚本生成设备包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行上述各实施例中的所述脚本生成方法的步骤。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述脚本生成方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种脚本生成方法,其特征在于,所述脚本生成方法包括:
分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值;
根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件;
获取所述目标数据库中目标数据表的修改需求信息;
根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值;
根据所述变动配置键及所述变动配置键对应的配置值,确定修改所述数据库中所述目标数据表对应的数据库脚本模板;
将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本。
2.根据权利要求1所述的脚本生成方法,其特征在于,在所述分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值之前,还包括:
接收数据库操作请求,其中,所述数据库操作请求包括:用户信息和数据库操作类型;
根据所述用户信息,获取用户账户的权限信息,其中,所述权限信息包括角色权限信息及操作权限信息;
根据所述权限信息、所述数据库操作类型以及预置操作权限表,判断所述用户账户是否有操作权限;
若是,则执行所述数据库操作类型对应的操作,否则不响应所述数据库操作请求。
3.根据权利要求1所述的脚本生成方法,其特征在于,所述分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值包括:
分别读取预置数据库中各数据表的表名信息;
根据所述表名信息,获取各数据表的配置键及所述配置键对应的配置值。
4.根据权利要求1所述的脚本生成方法,其特征在于,所述根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件包括:
新建预置格式的多个空白配置文件,其中,所述空白配置文件包括配置键字段及配置值字段;
根据所述配置键字段和所述配置值字段,将所述配置键及所述配置值对应填充至所述各空白配置文件中,得到各数据表对应的数据库脚本模板的配置文件。
5.根据权利要求1所述的脚本生成方法,其特征在于,所述修改需求信息包括:目标数据表的表名和修改操作的类型以及所述修改操作对应的修改内容,所述根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值包括:
根据所述目标数据表的表名,获取目标数据表对应的配置文件;
根据所述修改操作的类型以及所述修改操作对应的修改内容,对所述目标数据表对应的配置文件执行修改操作;
将所述目标数据表对应的配置文件中修改的配置键及配置值,分别定义为变动配置键和变动配置值。
6.根据权利要求1所述的脚本生成方法,其特征在于,在所述分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值之前,还包括:
对预置数据库中各数据表数据进行建模,生成对应的数据字典;
根据所述数据字典,生成各数据表中各数据对应的数据类型条件限制集合。
7.根据权利要求1-6中任一项所述的脚本生成方法,其特征在于,在所述将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本之前,还包括:
获取所述变动配置键及所述变动配置键对应的配置值的变动数据类型信息;
判断所述变动数据类型信息是否符合所述数据类型条件限制集合中对应的数据类型限制条件;
若符合,则将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,否则输出数据类型错误提示信息。
8.一种脚本生成装置,其特征在于,所述脚本生成装置包括:
读取模块,用于分别读取预置数据库中各数据表的配置键及所述各配置键对应的配置值;
构建模块,用于根据所述配置键和所述配置值,构建各数据表对应的数据库脚本模板的配置文件;
第一获取模块,用于获取所述目标数据库中目标数据表的修改需求信息;
修改模块,用于根据所述修改需求信息,修改所述目标数据表对应的配置文件,得到所述目标数据表对应的配置文件的变动配置键以及所述变动配置键对应的配置值;
确定模块,用于根据所述变动配置键及所述变动配置键对应的配置值,确定修改所述数据库中所述目标数据表对应的数据库脚本模板;
替换模块,用于将所述变动配置键及所述变动配置键对应的配置值替换至所述数据库脚本模板中,得到目标数据库脚本。
9.一种脚本生成设备,其特征在于,所述脚本生成设备包括:存储器和至少一个处理器,所述存储器中存储有指令;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述脚本生成设备执行如权利要求1-7中任一项所述的脚本生成方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,其特征在于,所述指令被处理器执行时实现如权利要求1-7中任一项所述的脚本生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011282953.3A CN112380239A (zh) | 2020-11-17 | 2020-11-17 | 脚本生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011282953.3A CN112380239A (zh) | 2020-11-17 | 2020-11-17 | 脚本生成方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112380239A true CN112380239A (zh) | 2021-02-19 |
Family
ID=74585696
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011282953.3A Pending CN112380239A (zh) | 2020-11-17 | 2020-11-17 | 脚本生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112380239A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114546389A (zh) * | 2022-04-25 | 2022-05-27 | 浙江大华技术股份有限公司 | 前端页面生成方法、音视频分析方法及其装置以及介质 |
CN114611933A (zh) * | 2022-03-10 | 2022-06-10 | 平安科技(深圳)有限公司 | 数据指标的累计汇算方法、装置、计算机设备及存储介质 |
CN116882345A (zh) * | 2023-07-06 | 2023-10-13 | 合芯科技(苏州)有限公司 | 电路仿真数据搜集方法、系统、介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110109897A (zh) * | 2019-04-15 | 2019-08-09 | 深圳壹账通智能科技有限公司 | 数据库脚本生成方法、装置、计算机设备和存储介质 |
CN111737227A (zh) * | 2020-06-22 | 2020-10-02 | 平安健康保险股份有限公司 | 数据修改方法及系统 |
CN111914295A (zh) * | 2020-08-04 | 2020-11-10 | 北京金山云网络技术有限公司 | 数据库的访问控制方法、装置及电子设备 |
-
2020
- 2020-11-17 CN CN202011282953.3A patent/CN112380239A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110109897A (zh) * | 2019-04-15 | 2019-08-09 | 深圳壹账通智能科技有限公司 | 数据库脚本生成方法、装置、计算机设备和存储介质 |
CN111737227A (zh) * | 2020-06-22 | 2020-10-02 | 平安健康保险股份有限公司 | 数据修改方法及系统 |
CN111914295A (zh) * | 2020-08-04 | 2020-11-10 | 北京金山云网络技术有限公司 | 数据库的访问控制方法、装置及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114611933A (zh) * | 2022-03-10 | 2022-06-10 | 平安科技(深圳)有限公司 | 数据指标的累计汇算方法、装置、计算机设备及存储介质 |
CN114546389A (zh) * | 2022-04-25 | 2022-05-27 | 浙江大华技术股份有限公司 | 前端页面生成方法、音视频分析方法及其装置以及介质 |
CN116882345A (zh) * | 2023-07-06 | 2023-10-13 | 合芯科技(苏州)有限公司 | 电路仿真数据搜集方法、系统、介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112380239A (zh) | 脚本生成方法、装置、设备及存储介质 | |
CN110764942A (zh) | 多种类数据校验方法、装置、计算机系统及可读存储介质 | |
CN104133772A (zh) | 一种自动生成测试数据的方法 | |
CN113420537B (zh) | 电子表格数据处理方法、装置、设备及存储介质 | |
CN112540924A (zh) | 接口自动化测试方法、装置、设备及存储介质 | |
CN113986880A (zh) | 业务系统的数据库适配方法、装置、设备及存储介质 | |
CN114218315A (zh) | 接口生成方法、装置、计算机设备及存储介质 | |
CN116126291A (zh) | 基于信息管理的快速开发方法、装置、设备及存储介质 | |
CN110633258A (zh) | 日志插入方法、装置、计算机装置及存储介质 | |
CN112699027A (zh) | 一种接口测试方法、装置、设备及可读存储介质 | |
CN110866007B (zh) | 大数据应用和表的信息管理方法、系统和计算机设备 | |
CN114676126B (zh) | 基于数据库的数据校验方法、装置、设备及存储介质 | |
CN114996758A (zh) | 一种数据脱敏方法、装置及电子设备 | |
CN112114794B (zh) | 网站应用程序自动生成方法、装置和计算机存储介质 | |
CN114968725A (zh) | 任务依赖关系校正方法、装置、计算机设备及存储介质 | |
CN111400245B (zh) | 美术资源迁移方法及装置 | |
CN111831622B (zh) | 数据索引生成方法、装置、电子设备和可读存储介质 | |
CN114721641A (zh) | 一种自动生成代码的方法、装置、电子设备及存储介质 | |
CN112632946A (zh) | 自动建表的方法、装置、计算机设备和存储介质 | |
JP6705482B2 (ja) | システム構築パラメータ管理装置、システム構築パラメータ管理システム、システム構築パラメータ管理方法、及び、システム構築パラメータ管理プログラム | |
CN112613290A (zh) | 单证模板生成方法、装置、设备及存储介质 | |
JP2017228035A (ja) | 変更意味推測装置、変更意味推測方法、及び、変更意味推測プログラム | |
CN112417012A (zh) | 数据处理方法及系统 | |
CN112000555B (zh) | 基于染色的日志生成方法、装置、设备及存储介质 | |
CN113778880B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210219 |
|
WD01 | Invention patent application deemed withdrawn after publication |