CN107622070A - 一种数据库管理方法及装置 - Google Patents
一种数据库管理方法及装置 Download PDFInfo
- Publication number
- CN107622070A CN107622070A CN201610560942.4A CN201610560942A CN107622070A CN 107622070 A CN107622070 A CN 107622070A CN 201610560942 A CN201610560942 A CN 201610560942A CN 107622070 A CN107622070 A CN 107622070A
- Authority
- CN
- China
- Prior art keywords
- database
- action statement
- statement
- split
- mapping relations
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种数据库管理方法及装置,该方法包括:定义数据库中包括增加、删除、修改、查找及存储的操作语句;建立所定义的操作语句与对应数据库API的映射关系;依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型;分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API。该发明的有益效果为:通过重新定义数据库操作语句并对其进行拆分,提高了数据库编写程序的效率。
Description
技术领域
本发明涉及数据库管理技术领域,尤其涉及一种数据库管理方法及装置。
背景技术
通常操作数据库是通过调用计算机语言提供的操作数据库的API(应用编程接口),来查询或更新数据库中的数据。现有的操作数据库的方案通常是调用计算机语言提供的访问数据库的API,来查询或更新数据库,并返回结果。故现有的调用数据库API的方案,没法重用操作数据库的代码。如果是编译型语言,调试代码不方便,每次更改代码后,都要重新编译代码,开发效率不高。
发明内容
本发明要解决的技术问题在于,针对上述现有技术数据库API调用效率低的问题,提供一种数据库管理方法及装置。
本发明解决其技术问题所采用的技术方案是:
一方面,构造一种数据库管理方法,包括:
定义数据库中包括增加、删除、修改、查找及存储的操作语句;
建立所定义的操作语句与对应数据库API的映射关系;
依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型;
分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API。
在本发明所述的数据库管理方法中,所述建立所定义的操作语句与对应数据库API的映射关系的步骤包括以下子步骤:
建立所定义的操作语句与对应数据库API的映射关系;
依据所述映射关系,获取与数据库管理任务项相对应的脚本;
对所述数据库执行所述脚本以动态操作数据库。
在本发明所述的数据库管理方法中,所述依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型的步骤包括以下子步骤:
依据所述映射关系拆分所要解析的字符串,从而得到数据库操作语句数组;
遍历所述数据库操作语句数组以将所述操作语句拆分为多个参数及数据库操作类型。
在本发明所述的数据库管理方法中,所述分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API的步骤还包括:
调用数据库API查询数据库,并将数据库返回结果存放至一个变量。
在本发明所述的数据库管理方法中,所述遍历所述数据库操作语句数组以将所述操作语句拆分为多个参数及数据库操作类型的步骤包括以下步骤:
S321、检测是否存在未处理的操作语句,若存在,则取下一个操作语句,其中,所述数据库操作语句数组包括多个操作语句;
S322、将所述操作语句拆分为多个参数及数据库操作类型,返回步骤S321,直至多个所述操作语句处理完成。
另一方面,提供一种数据库管理装置,包括:
定义单元,用于定义数据库中包括增加、删除、修改、查找及存储的操作语句;
映射建立单元,用于建立所定义的操作语句与对应数据库API的映射关系;
拆分单元,用于依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型;
调用单元,用于分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API。
在本发明所述的数据库管理装置中,所述映射建立单元包括:
映射建立模块,用于建立所定义的操作语句与对应数据库API的映射关系;
脚本获取模块,用于依据所述映射关系,获取与数据库管理任务项相对应的脚本;
脚本执行模块,用于对所述数据库执行所述脚本以动态操作数据库。
在本发明所述的数据库管理装置中,所述拆分单元包括:
字符串拆分模块,用于依据所述映射关系拆分所要解析的字符串,从而得到数据库操作语句数组;
数组遍历模块,用于遍历所述数据库操作语句数组以将所述操作语句拆分为多个参数及数据库操作类型。
在本发明所述的数据库管理装置中,所述调用单元还用于:
调用数据库API查询数据库,并将数据库返回结果存放至一个变量。
在本发明所述的数据库管理装置中,所述数组遍历模块包括:
语句检测子模块,用于检测是否存在未处理的操作语句,若存在,则取下一个操作语句,其中,所述数据库操作语句数组包括多个操作语句;
拆分子模块,用于将所述操作语句拆分为多个参数及数据库操作类型。
上述公开的一种数据库管理方法及装置具有以下有益效果:通过重新定义数据库操作语句并对其进行拆分,提高了数据库编写程序的效率。
附图说明
图1为本发明提供的一种数据库管理方法流程图;
图2为本发明提供的一种数据库管理装置框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供了一种数据库管理方法及装置,其目的在于,通过重新定义数据库操作语句并对其进行拆分,提高了数据库编写程序的效率。本发明具体包含两个部分,一个部分是数据库操作语句,用于编写操作数据库的动态语句; 第二个部分是解析引擎,解析数据库操作语句,调用数据库API,并返回结果。
参见图1,图1为本发明提供的一种数据库管理方法流程图,该数据库管理方法包括步骤S1-S4:
S1、定义数据库中包括增加、删除、修改、查找及存储的操作语句;具体的,定义的操作语句如下:
1、GetData(tableName,columnNames,filterCondition,recordCount,resultVarName),
从数据库中查询数据。
参数说明:tableName:数据库表名称。columnNames:数据库字段列表。filterCondition:查询的过滤条件。recordCount:设置返回的记录数。resultVarName:存放数据库查询结果的变量名称。
2、InsertData(tableName,idFieldName,idVarName,idType,fieldAndValueStr,resultVarName),往数据库中插入数据。
参数说明:tableName:数据库表名称,idFieldName:主键字段名。idVarName:主键变量名称,用于保存主键值。idType:主键值的生成方式。fieldAndValueStr:字段和对应值合并在一起的字符串。resultVarName:保存插入结果的变量名称。
3、UpdateData(tableName,fieldAndValueStr,updateCondition,resultVarName),更改数据库。
参数说明:tableName:数据库表名称,fieldAndValueStr:字段和对应值合并在一起的字符串。updateCondition:更改条件。resultVarName:保存更改结果的变量名称。
4、DeleteData(tableName,deleteCondition,resultVarName),删除数据库中的数据。
参数说明:tableName:数据库表名称,deleteCondition:删除条件。resultVarName:保存删除结果的变量名称。
5、ExecuteSql(outputVarType,outputVarName,sqlType,spNameOrSql,spOrSqlPara,resultVarName),执行SQL语句或存储过程。
参数说明:outputVarType:存放SQL语句或存储过程执行结果的变量类型。outputVarName:存放SQL语句或存储过程执行结果的变量名称。sqlType:类型,SQL或存储过程。spNameOrSql:存储过程名称或SQL语句。spOrSqlPara:存储过程或SQL语句的参数。resultVarName:保存执行是否成功的变量名称。
S2、建立所定义的操作语句与对应数据库API的映射关系;所述步骤S2包括子步骤S21-S23:
S21、建立所定义的操作语句与对应数据库API的映射关系;
S22、依据所述映射关系,获取与数据库管理任务项相对应的脚本;
S23、对所述数据库执行所述脚本以动态操作数据库。
S3、依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型;所述步骤S3包括子步骤S31-S32:
S31、依据所述映射关系拆分所要解析的字符串,从而得到数据库操作语句数组;
S32、遍历所述数据库操作语句数组以将所述操作语句拆分为多个参数及数据库操作类型。所述步骤S32包括子步骤S321-S322:
S321、检测是否存在未处理的操作语句,若存在,则取下一个操作语句,其中,所述数据库操作语句数组包括多个操作语句;
S322、将所述操作语句拆分为多个参数及数据库操作类型,返回步骤S321,直至多个所述操作语句处理完成。
S4、分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API。调用数据库API查询数据库,并将数据库返回结果存放至一个变量。根据数据库操作类型,如InsertData或GetData,和用户输入的参数的值,调用对应的数据库API,将返回结果作为变量值。
综上所述,本发明首先读取一个包含动态数据库语句的字符串,拆分该字符串,得到一个或多个数据库操作语句,依次处理每个数据库操作语句,将数据库操作语句拆分成一个数据库操作类型和多个参数,然后调用计算机语言提供的访问数据库的API并返回结果。
参见图2,图2为本发明提供的一种数据库管理装置100框图,该数据库 管理装置100通过在系统中设置相应的程序实现,该数据库管理装置100包括定义单元1、映射建立单元2、拆分单元3及调用单元4。
定义单元1用于定义数据库中包括增加、删除、修改、查找及存储的操作语句;
映射建立单元2用于建立所定义的操作语句与对应数据库API的映射关系;
拆分单元3用于依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型;
调用单元4用于分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API。
优选的,所述映射建立单元2包括:
映射建立模块,用于建立所定义的操作语句与对应数据库API的映射关系;
脚本获取模块,用于依据所述映射关系,获取与数据库管理任务项相对应的脚本;
脚本执行模块,用于对所述数据库执行所述脚本以动态操作数据库。
优选的,所述拆分单元3包括:
字符串拆分模块,用于依据所述映射关系拆分所要解析的字符串,从而得到数据库操作语句数组;
数组遍历模块,用于遍历所述数据库操作语句数组以将所述操作语句拆分为多个参数及数据库操作类型。
优选的,所述调用单元4还用于:
调用数据库API查询数据库,并将数据库返回结果存放至一个变量。
优选的,所述数组遍历模块包括:
语句检测子模块,用于检测是否存在未处理的操作语句,若存在,则取下一个操作语句,其中,所述数据库操作语句数组包括多个操作语句;
拆分子模块,用于将所述操作语句拆分为多个参数及数据库操作类型。
本文提供了实施例的各种操作。在一个实施例中,所述的一个或操作可以 构成一个或计算机可读介质上存储的计算机可读指令,其在被电子设备执行时将使得计算设备执行所述操作。描述一些或所有操作的顺序不应当被解释为暗示这些操作必需是顺序相关的。本领域技术人员将理解具有本说明书的益处的可替代的排序。而且,应当理解,不是所有操作必需在本文所提供的每个实施例中存在。
而且,本文所使用的词语“优选的”意指用作实例、示例或例证。奉文描述为“优选的”任意方面或设计不必被解释为比其他方面或设计更有利。相反,词语“优选的”的使用旨在以具体方式提出概念。如本申请中所使用的术语“或”旨在意指包含的“或”而非排除的“或”。即,除非另外指定或从上下文中清楚,“X使用A或B”意指自然包括排列的任意一个。即,如果X使用A;X使用B;或X使用A和B二者,则“X使用A或B”在前述任一示例中得到满足。
而且,尽管已经相对于一个或实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件、资源等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
本发明实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以 是只读存储器,磁盘或光盘等。上述的各装置或系统,可以执行相应方法实施例中的存储方法。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。
Claims (10)
1.一种数据库管理方法,其特征在于,包括:
定义数据库中包括增加、删除、修改、查找及存储的操作语句;
建立所定义的操作语句与对应数据库API的映射关系;
依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型;
分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API。
2.根据权利要求1所述的数据库管理方法,其特征在于,所述建立所定义的操作语句与对应数据库API的映射关系的步骤包括以下子步骤:
建立所定义的操作语句与对应数据库API的映射关系;
依据所述映射关系,获取与数据库管理任务项相对应的脚本;
对所述数据库执行所述脚本以动态操作数据库。
3.根据权利要求1所述的数据库管理方法,其特征在于,所述依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型的步骤包括以下子步骤:
依据所述映射关系拆分所要解析的字符串,从而得到数据库操作语句数组;
遍历所述数据库操作语句数组以将所述操作语句拆分为多个参数及数据库操作类型。
4.根据权利要求1所述的数据库管理方法,其特征在于,所述分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API的步骤还包括:
调用数据库API查询数据库,并将数据库返回结果存放至一个变量。
5.根据权利要求3所述的数据库管理方法,其特征在于,所述遍历所述数据库操作语句数组以将所述操作语句拆分为多个参数及数据库操作类型的步骤包括以下步骤:
S321、检测是否存在未处理的操作语句,若存在,则取下一个操作语句,其中,所述数据库操作语句数组包括多个操作语句;
S322、将所述操作语句拆分为多个参数及数据库操作类型,返回步骤S321,直至多个所述操作语句处理完成。
6.一种数据库管理装置,其特征在于,包括:
定义单元,用于定义数据库中包括增加、删除、修改、查找及存储的操作语句;
映射建立单元,用于建立所定义的操作语句与对应数据库API的映射关系;
拆分单元,用于依据所述映射关系将所述操作语句拆分为多个参数及数据库操作类型;
调用单元,用于分别输入多个所述参数的值,依据所述参数的值以及所述数据库操作类型调用数据库API。
7.根据权利要求6所述的数据库管理装置,其特征在于,所述映射建立单元包括:
映射建立模块,用于建立所定义的操作语句与对应数据库API的映射关系;
脚本获取模块,用于依据所述映射关系,获取与数据库管理任务项相对应的脚本;
脚本执行模块,用于对所述数据库执行所述脚本以动态操作数据库。
8.根据权利要求6所述的数据库管理装置,其特征在于,所述拆分单元包括:
字符串拆分模块,用于依据所述映射关系拆分所要解析的字符串,从而得到数据库操作语句数组;
数组遍历模块,用于遍历所述数据库操作语句数组以将所述操作语句拆分为多个参数及数据库操作类型。
9.根据权利要求6所述的数据库管理装置,其特征在于,所述调用单元还用于:
调用数据库API查询数据库,并将数据库返回结果存放至一个变量。
10.根据权利要求8所述的数据库管理装置,其特征在于,所述数组遍历模块包括:
语句检测子模块,用于检测是否存在未处理的操作语句,若存在,则取下一个操作语句,其中,所述数据库操作语句数组包括多个操作语句;
拆分子模块,用于将所述操作语句拆分为多个参数及数据库操作类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610560942.4A CN107622070B (zh) | 2016-07-15 | 2016-07-15 | 一种数据库管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610560942.4A CN107622070B (zh) | 2016-07-15 | 2016-07-15 | 一种数据库管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107622070A true CN107622070A (zh) | 2018-01-23 |
CN107622070B CN107622070B (zh) | 2021-05-14 |
Family
ID=61087046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610560942.4A Active CN107622070B (zh) | 2016-07-15 | 2016-07-15 | 一种数据库管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107622070B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108920566A (zh) * | 2018-06-21 | 2018-11-30 | 吉林亿联银行股份有限公司 | 一种对SQLite数据库的操作方法、装置及设备 |
CN109063070A (zh) * | 2018-07-23 | 2018-12-21 | 郑州云海信息技术有限公司 | 一种数据库的操作方法及数据库服务器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040220956A1 (en) * | 2003-04-30 | 2004-11-04 | Dillon Software Services, Llc | Software framework that facilitates design and implementation of database applications |
CN103699620A (zh) * | 2013-12-19 | 2014-04-02 | 珠海世纪鼎利通信科技股份有限公司 | 面向对象中利用orm框架实现数据库操作的方法及系统 |
CN104267932A (zh) * | 2014-08-12 | 2015-01-07 | 广州华多网络科技有限公司 | 数据库操作方法、装置及服务器 |
CN105069142A (zh) * | 2015-08-18 | 2015-11-18 | 山大地纬软件股份有限公司 | 数据增量抽取转换与分发系统及方法 |
CN105117233A (zh) * | 2015-09-14 | 2015-12-02 | 百度在线网络技术(北京)有限公司 | Api调用方法及装置 |
-
2016
- 2016-07-15 CN CN201610560942.4A patent/CN107622070B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040220956A1 (en) * | 2003-04-30 | 2004-11-04 | Dillon Software Services, Llc | Software framework that facilitates design and implementation of database applications |
CN103699620A (zh) * | 2013-12-19 | 2014-04-02 | 珠海世纪鼎利通信科技股份有限公司 | 面向对象中利用orm框架实现数据库操作的方法及系统 |
CN104267932A (zh) * | 2014-08-12 | 2015-01-07 | 广州华多网络科技有限公司 | 数据库操作方法、装置及服务器 |
CN105069142A (zh) * | 2015-08-18 | 2015-11-18 | 山大地纬软件股份有限公司 | 数据增量抽取转换与分发系统及方法 |
CN105117233A (zh) * | 2015-09-14 | 2015-12-02 | 百度在线网络技术(北京)有限公司 | Api调用方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108920566A (zh) * | 2018-06-21 | 2018-11-30 | 吉林亿联银行股份有限公司 | 一种对SQLite数据库的操作方法、装置及设备 |
CN108920566B (zh) * | 2018-06-21 | 2020-10-20 | 吉林亿联银行股份有限公司 | 一种对SQLite数据库的操作方法、装置及设备 |
CN109063070A (zh) * | 2018-07-23 | 2018-12-21 | 郑州云海信息技术有限公司 | 一种数据库的操作方法及数据库服务器 |
CN109063070B (zh) * | 2018-07-23 | 2022-03-25 | 郑州云海信息技术有限公司 | 一种数据库的操作方法及数据库服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN107622070B (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9870382B2 (en) | Data encoding and corresponding data structure | |
CN107491561B (zh) | 一种基于本体的城市交通异构数据集成系统及方法 | |
TWI476608B (zh) | A distributed computing data merging method, system and device thereof | |
CN102033748B (zh) | 一种数据处理流程代码的生成方法 | |
CN104123374B (zh) | 分布式数据库中聚合查询的方法及装置 | |
CN102880709B (zh) | 数据仓库管理系统和数据仓库管理方法 | |
US9619514B2 (en) | Integration of optimization and execution of relational calculation models into SQL layer | |
CN104182405B (zh) | 一种连接查询方法及装置 | |
CN103810224B (zh) | 信息持久化和查询方法及装置 | |
CN110472068A (zh) | 基于异构分布式知识图谱的大数据处理方法、设备及介质 | |
US9146979B2 (en) | Optimization of business warehouse queries by calculation engines | |
US5535325A (en) | Method and apparatus for automatically generating database definitions of indirect facts from entity-relationship diagrams | |
CN109947998A (zh) | 跨异构系统的网络的计算数据沿袭 | |
CN106611037A (zh) | 用于分布式图计算的方法与设备 | |
WO1998004980A1 (en) | Database apparatus | |
CN103020158A (zh) | 一种报表创建方法、装置和系统 | |
JP3452531B2 (ja) | データ・マイニングする方法およびシステム | |
CN109947770A (zh) | 一种数据库查询方法、终端设备及存储介质 | |
CN109710220B (zh) | 关系型数据库查询方法、装置、设备及存储介质 | |
CN100517222C (zh) | 支持转换引擎与映射规则相分离的模型转换装置及其方法 | |
CN107103035A (zh) | 本地表数据更新方法及装置 | |
CN103902565A (zh) | 一种数据访问关系的确定方法及装置 | |
CN107622070A (zh) | 一种数据库管理方法及装置 | |
CN104834742A (zh) | 一种基于sca的etl架构管理方法 | |
CN102799423A (zh) | Jsf中执行动态方法的方法及装置 |
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 |