CN112650766A - 数据库数据操作的方法、系统及服务器 - Google Patents

数据库数据操作的方法、系统及服务器 Download PDF

Info

Publication number
CN112650766A
CN112650766A CN201910959089.7A CN201910959089A CN112650766A CN 112650766 A CN112650766 A CN 112650766A CN 201910959089 A CN201910959089 A CN 201910959089A CN 112650766 A CN112650766 A CN 112650766A
Authority
CN
China
Prior art keywords
structured query
data
language template
logic
processing
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
Application number
CN201910959089.7A
Other languages
English (en)
Other versions
CN112650766B (zh
Inventor
王开理
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910959089.7A priority Critical patent/CN112650766B/zh
Publication of CN112650766A publication Critical patent/CN112650766A/zh
Application granted granted Critical
Publication of CN112650766B publication Critical patent/CN112650766B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2452Query translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了数据库数据操作的方法、系统及服务器和计算机可读存储介质,该方法包括:当接收到业务需求时,根据业务需求确定结构化查询语言模板;获取结构化查询语言模板对应的原始参数及表达式,并利用表达式对原始参数进行预处理,得到目标参数;根据结构化查询语言模板及目标参数生成结构化查询语句;利用结构化查询语句完成数据操作。本发明能够根据业务需求确定结构化查询语言模板,并利用该结构化查询语言模板对应的表达式对原始参数进行预处理,得到目标参数,继而根据目标参数生成结构化查询语句,不需要用户自行对原始参数进行预处理,降低了结构化查询语句的开发成本,同时提高了用户的开发效率和测试效率。

Description

数据库数据操作的方法、系统及服务器
技术领域
本发明涉及服务器技术领域,特别涉及数据库数据操作的方法、系统及服务器和计算机可读存储介质。
背景技术
结构化查询语言(Structured Quevy Language,SQL)是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在各种业务应用系统的开发过程中,需要多次访问数据库。传统的数据库处理主要是通过程序员拼写复杂繁琐的SQL语句完成数据库操作的。
这种传统方式存在的缺点是:在编写结构化查询语句时往往需要程序员先对原始参数做处理,然后才能够根据预处理过后的参数编写结构化查询语句,其过程繁琐复杂,极大的增加了开发成本。
因此,如何降低结构化查询语句的开发成本,提高开发效率是本领域技术人员目前需要解决的技术问题。
发明内容
本发明的目的是提供数据库数据操作的方法、系统及服务器和计算机可读存储介质,用于降低结构化查询语句的开发成本,提高开发效率。
为实现上述目的,本发明第一方面提供了一种数据库数据操作的方法,该方法包括:
当接收到业务需求时,根据所述业务需求确定结构化查询语言模板;
获取所述结构化查询语言模板对应的原始参数及表达式,并利用所述表达式对所述原始参数进行预处理,得到目标参数;
根据所述结构化查询语言模板及所述目标参数生成结构化查询语句;
利用所述结构化查询语句完成数据操作。
结合本发明第一方面,在本发明第一方面的第一种实施方式中,
利用所述结构化查询语句完成数据操作,包括:
在数据库中执行所述结构化查询语句,以完成数据操作。
结合本发明第一方面的第一种实施方式,在本发明第一方面的第二种实施方式中,若所述数据操作为数据读取操作,则在所述在数据库中执行所述结构化查询语句,以完成数据操作之后,还包括:
根据所述业务需求确定第一处理策略,并利用所述第一处理策略对所述数据读取操作的读取结果进行处理。
结合本发明第一方面,在本发明第一方面的第三种实施方式中,利用所述结构化查询语句完成数据操作,包括:
将所述结构化查询语句输出至预设位置;
当接收到数据操作指令时,根据所述数据操作指令在所有所述结构化查询语句中确定待执行语句,执行所述待执行语句以完成数据操作。
结合本发明第一方面的第三种实施方式,在本发明第一方面的第四种实施方式中,若所述数据操作为数据读取操作,则在所述在数据库中执行所述结构化查询语句,以完成数据操作之后,还包括:
根据所述数据操作指令确定第二处理策略,并利用所述第二处理策略对所述数据读取操作的读取结果进行处理。
结合本发明第一方面,在本发明第一方面的第五种实施方式中,根据所述业务需求确定结构化查询语言模板,包括:
根据所述业务需求选择对应的预设处理逻辑;
将所述预设处理逻辑添加至初始模板中,得到所述结构化查询语言模板。
结合本发明第一方面的第五种实施方式,在本发明第一方面的第六种实施方式中,还包括:
当接收到逻辑处理命令时,根据所述逻辑处理命令对逻辑存储空间中的所述预设处理逻辑进行处理;
其中,所述逻辑处理命令包括逻辑增加命令、逻辑修改命令、逻辑删除命令中的至少一项。
为实现上述目的,本发明第二方面提供了一种数据库数据操作的系统,该系统包括:
确定模块,用于当接收到业务需求时,根据所述业务需求确定结构化查询语言模板;
预处理模块,用于获取所述结构化查询语言模板对应的原始参数及表达式,并利用所述表达式对所述原始参数进行预处理,得到目标参数;
语句生成模块,用于根据所述结构化查询语言模板及所述目标参数生成结构化查询语句;
数据操作模块,用于利用所述结构化查询语句完成数据操作。
为实现上述目的,本发明第三方面提供了一种服务器,该服务器包括:
处理器和存储器;
其中,所述处理器用于执行所述存储器中存储的程序;
所述存储器用于存储程序,所述程序至少用于:
当接收到业务需求时,根据所述业务需求确定结构化查询语言模板;
获取所述结构化查询语言模板对应的原始参数及表达式,并利用所述表达式对所述原始参数进行预处理,得到目标参数;
根据所述结构化查询语言模板及所述目标参数生成结构化查询语句;
利用所述结构化查询语句完成数据操作。
为实现上述目的,本发明第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述数据库数据操作的方法的步骤。
通过以上方案可知,本发明提供的数据库数据操作的方法,包括:当接收到业务需求时,根据业务需求确定结构化查询语言模板;获取结构化查询语言模板对应的原始参数及表达式,并利用表达式对原始参数进行预处理,得到目标参数;根据结构化查询语言模板及目标参数生成结构化查询语句;利用结构化查询语句完成数据操作。
本发明所提供的技术方案,在面对多种多样的业务需求时,能够根据业务需求确定结构化查询语言模板,并获取该结构化查询语言模板对应的原始参数及表达式,进而利用该表达式对原始参数进行预处理,得到目标参数,并根据该结构化查询语言模板及目标参数生成结构化查询语句,不需要用户自行对原始参数进行预处理,降低了结构化查询语句的开发成本,同时提高了用户的开发效率和测试效率。本发明还公开了数据操作系统及服务器和计算机可读存储介质,同样能实现上述技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1为本发明实施例提供的一种数据操作系统的架构图;
图2为本发明实施例提供的一种数据库数据操作的方法的流程图;
图3为本发明实施例所提供的一种初始模板的示意图;
图4为图2所提供的一种数据库数据操作的方法中S106的一种实际表现方式的流程图;
图5为本发明实施例所提供的一种数据库配置界面的示意图;
图6为图2所提供的一种数据库数据操作的方法中S106的另一种实际表现方式的流程图;
图7为本发明实施例所提供的一种读取结果处理界面的示意图;
图8为本发明实施例提供的一种数据库数据操作的系统的结构图;
图9为本发明实施例提供的一种服务器的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于理解本发明提供的数据库数据操作的方法,下面对其使用的系统进行介绍。参见图1,其示出了本发明实施例提供的一种数据操作系统的架构图,如图1所示,包括服务器10、终端20和网络30,网络30用以在服务器10和终端20之间提供通信链路的介质。网络30可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端20可以提供各种服务,例如,终端20可以响应于接收到查询请求,对该查询请求进行分析等处理,从服务器10中获取该查询请求所请求的数据。
服务器10可以是提供各种服务的服务器,例如部署有终端20所接收的查询请求所请求的数据所在的数据库的服务器。
需要指出的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,此处不限定终端的数量,即终端20可以包括多个终端,终端20可以为如PC(中文全称:个人计算机,英文全称:personal computer)端等固定终端,其上安装有客户端。终端20会展示配置界面以及最终的数据操作结果,当用户在配置界面输入相应的参数时,终端20会根据业务需求完成结构化查询语言模板的建立,并根据参数生成对应的结构化查询语句,然后在数据库中执行该结构化查询语句,以完成数据操作。
本发明的申请人经研究发现:传统的数据库处理主要是通过程序员拼写复杂繁琐的SQL语句完成数据库操作的,而在编写结构化查询语句时往往需要程序员先对原始参数做处理,然后才能够根据预处理过后的参数编写结构化查询语句,其过程繁琐复杂,极大的增加了开发成本。
因此,为了降低结构化查询语句的开发成本,提高开发效率,服务器10在面对多种多样的业务需求时,能够根据业务需求确定结构化查询语言模板,并获取该结构化查询语言模板对应的原始参数及表达式,进而利用该表达式对原始参数进行预处理,得到目标参数,并根据该结构化查询语言模板及目标参数生成结构化查询语句,不需要用户自行对原始参数进行预处理,降低了结构化查询语句的开发成本,同时提高了用户的开发效率和测试效率。
本发明实施例公开了一种数据库数据操作的方法,降低了SQL模板的开发成本,同时提高了用户的开发效率和测试效率。
参见图2,本发明实施例提供的一种数据库数据操作的方法的流程图,如图2所示,其具体包括如下步骤:
S101:客户端显示输入界面,接收输入的业务需求;
在具体实施中,业务需求通常规定了开发人员必须在产品中实现的软件功能,开发业务逻辑需要通过开发人员来开发程序进行实现,以MySQL数据库为例,业务系统通常需要对MySQL数据库中的数据做增加、删除、修改、查询等操作,甚至是在不同的时间节点完成不同的数据操作,如在上午9点读取数据库中的第一数据表,下午3点将监测到的数据写入第三数据表等,如果是由用户来针对每个业务需求编写对应的语句,将会极大的浪费人力资源,而且在业务需求发生改变时,需要重新编写,任务繁重冗杂;
基于此,本发明的目的在于提供一个数据操作引擎,能够根据用户输入的业务需求自动完成模板选择、原始参数获取及预处理、结构化查询语句编写的过程,不需要用户来操控,极大的简化了数据操作过程;
在一个具体实施例中,当业务系统有业务需求时,可以通过相应的需求接口提供需求信息。这里的需求接口可以是以一个云平台的形式,云平台提供有业务需求编辑界面,用户可以在该业务需求编辑界面上进行相应业务需求的信息编辑,编辑好后,进行提交,那么其业务需求就会通过这个云平台的需求接口发送到后端进行数据库的处理操作。
S102:客户端将业务需求发送至服务器;
S103:服务器接收业务需求,并根据该业务需求确定结构化查询语言模板;
在本步骤中,每个业务需求都对应一个结构化查询语言模板,该结构化查询语言模板能够根据目标参数生成结构化查询语句,即该结构化查询语言模板可以理解为一个未添加目标参数的结构化查询语句,在该结构化查询语言模板中添加相应的目标参数之后便可得到结构化查询语句。
优选的,这里提到的根据业务需求确定结构化查询语言模板,其具体可以为:
根据业务需求选择对应的预设处理逻辑;
将预设处理逻辑添加至初始模板中,得到结构化查询语言模板;
当接收到业务需求时,服务器可以选择该业务需求对应的预设处理逻辑;该预设处理逻辑可以包括但不限于表创建逻辑、判断逻辑、分组筛选逻辑、批量重复逻辑、临时表绑定数据处理逻辑等;
在一个具体实施例中,预设处理逻辑可以包括如下内容中的一项或几项:
创建一张表:create table表名(字段名数据类型(长度限制)[约束(主键、不可为空等)]);
查看数据库中所有表信息:show tables;
查看表结构:desc表名;
删除一张表:drop table表名;
为表添加字段:alert table表名add字段名类型(长度)[约束];
修改字段:alert table表名modify需要修改的字段名类型(长度)[约束];
修改字段名:alert table表名change旧字段名新字段名类型(长度)[约束];
删除字段:alert table表名drop字段名;
修改表名:alert table表名to新表名;
修改表的字符集:alert table表名character set编码格式;
查看当前表的编码等信息:show create table表名;
插入数据:insert into表名(字段1,字段2,……)value(值1,值2,……);
修改数据:update表名set字段名=值,字段名=值,……where条件;
删除数据:delete from表名where条件;
查询数据:
select(查询所有字段为*)字段1,字段2,……from表名where条件;
select字段1 as别名1,……from表名where条件为查询结果起别名;
select*,字段1 as别名1,……from表名where条件查询所有列之后再新起一列设置别名;
select distinct(字段1)from表名结果去重;
select字段1+n from表名where条件将字段值+n显示;
select*from表名where字段1like%n%模糊查询,匹配结果带有n的查询,可以前模糊和后模糊已经完全模糊匹配;
select*from表名where字段1in(范围内值1,范围内值2,……)将查询出来的值在指定范围内筛选;
select*from表名where条件1and条件2……多条件查询,需同时满足所有条件;
select*from表名where条件1or条件2……多条件满足一个即可;
select*from表名where条件……order by字段1asc/desc将查询结果根据字段1升序/降序排列;
select sum/avg(字段1)from表名where条件查询出字段1的总和/平均值;
select count(字段1/*)from表名查询记录数,null不计数;
select注意事项,分组后条件筛选只能用having;
进一步的,每种预设处理逻辑可以包括多种处理方式,例如,表创建逻辑可以包括如下两种方式进行处理:
1.select*into#T from tablename
2.CREATE TABLE#tablename(
coumnname1 NVARCHAR(36)
)
其它预设处理逻辑的处理方式的原理与表创建逻辑类似,这里不再赘述;
需要说明的是,这里提到的预设处理逻辑可以为用户或开发人员在常用处理逻辑中选择的使用频率较高的处理逻辑,也可以为依据本领域技术人员制定的处理逻辑选择策略选择的处理逻辑,还可以为服务器连接到制定地址中下载得到的处理逻辑,本发明对预设处理逻辑的获取方式不做具体限定。
优选的,预设处理逻辑还可以存储于逻辑存储空间中,当接收到输入的业务需求时,能够在该逻辑存储空间中选择对应的预设处理逻辑建立结构化查询模板;
在此基础上,当接收到逻辑处理命令时,还可以根据逻辑处理命令对逻辑存储空间中的预设处理逻辑进行处理;
这里提到的逻辑处理命令可以包括逻辑增加命令、逻辑修改命令、逻辑删除命令中的至少一项;
在一个具体实施例中,用户或者开发人员可以将常用的处理逻辑添加到逻辑存储空间中备用,当用户发现该逻辑存储空间中的处理逻辑的类别不足、无法满足常用业务需求时,可以输入逻辑增加命令,以使系统执行该逻辑增加命令将相应的处理逻辑添加至该逻辑存储空间中;当用户发现该逻辑存储空间中的某些处理逻辑需要做出适当修改或修正时,用户可以输入逻辑修改命令,以使系统执行该逻辑修改命令对相应的处理逻辑进行修改或修正;当用户发现该逻辑存储空间中的某些处理逻辑被选择的频率过低时,用户可以输入逻辑删除命令,以使系统执行该逻辑删除命令删除相应的处理逻辑。
服务器可以根据选择的一个或多个预设处理逻辑,完成结构化查询语言模板的建立:当业务需求对应的预设处理逻辑为一个时,则根据该结构化查询语言模板生成的结构化查询语句为一条;当业务需求对应的预设处理逻辑为多个时,则根据该结构化查询语言模板生成的结构化查询语句为多条,而且各条结构化查询语句之间有顺序要求,可以理解为生成的是结构化查询脚本;
可选的,这里提到的初始模板可以为内容为空的空白模板,也可以为具有一个或多个常用测试逻辑的常用模板,这里提到的常用测试逻辑用于对生成的结构化查询语句进行测试,例如,如图3所示,该初始模板中可以包括查询测试逻辑、执行测试逻辑及事务测试逻辑;
进一步的,服务器可以按照预定格式将已选择的预设处理逻辑添加至该初始模板中,得到该结构化查询语言模板,例如可以按照预设处理逻辑的选择顺序将预设处理逻辑依次添加至初始模板中,也可以按照预设处理逻辑的优先级在初始模板中进行排序,本发明对此不作具体限定。
S104:服务器获取结构化查询语言模板对应的原始参数及表达式,并利用表达式对原始参数进行预处理,得到目标参数;
在本步骤中,服务器先获取到结构化查询语言模板对应的原始参数及表达式,该表达式可以包括算术表达式和逻辑表达式,用于对原始参数进行预处理,得到目标参数,其中:
算术表达式是最常用的表达式,又称为数值表达式,是通过算术运算符(例如乘法运算符*、除法运算符/、整除运算符div、取余运算符Mod、加法运算符+及减法运算符-)来进行运算的数学公式;
逻辑表达式是通过关系运算符(=(等于)、<(小于)、<=(小于等于)、>(大于)、>=(大于等于)、<>(不等于)),和/或,逻辑运算符(NOT(非)、AND(与)、OR(或))来进行运算的公式。
S105:服务器根据结构化查询语言模板及目标参数生成结构化查询语句;
在利用表达式对原始参数进行预处理,得到目标参数之后,服务器将目标参数添加到结构化查询语言模板的对应位置中,得到该结构化查询语句;
在一个具体实施例中,这里提到的结构化查询语句可以包括如下语句:
SELECT DISTINCT:表中一个列可能会包含多个重复值,distinct关键词用于返回唯一不同的值;
SELECT TOP:规定要返回的记录的数目。对于拥有数千条记录的大型表来说,是非常有用的;
BETWEEN:操作符选取介于两个值之间的数据范围内的值,这些值可以是数值、文本或者日期;
INNER JOIN:如果表中有至少一个匹配,则返回行;
LEFT JOIN:即使右表中没有匹配,也从左表返回所有的行;
RIGHT JOIN:即使左表中没有匹配,也从右表返回所有的行;
FULL JOIN:只要其中一个表中存在匹配,则返回行;
UNION:操作符用于合并两个或多个SELECT语句的结果集,UNION内部的每个SELECT语句必须拥有相同数量的列,列也必须拥有相似的数据类型。同时,每个SELECT语句中的列的顺序必须相同;
IN:操作符允许在WHERE子句中规定多个值;
LIKE:操作符用于在WHERE子句中搜索列中的指定模式,如:SELECT*FROM PersonsWHERE City LIKE'%g';
SELECT INTO语句从一个表中选取数据,然后把数据插入另一个表中;
AUTO_INCREMENT:自动新增,默认开始值是1,每条新记录递增1;
ALTER TABLE:语句用于在已有的表中添加、修改或删除列;
DROP语句:删除语句:DROP INDEX(索引)、DROP TABLE(表)、DROP DATABASE(数据库)、TRUNCATE TABLE(删除数据不删表);
CREATE VIEW:视图是基于SQL语句的结果集的可视化的表。
在本步骤中,服务器可以直接在预设参数集中获取到该结构化查询语言模板对应的参数,也可以发送参数获取请求至客户端,以使用户通过客户端输入相应的参数;
优选的,在一个具体实施例中,服务器在得到结构化查询语言模板之后,可以直接将该结构化查询语言模板发送至客户端,客户端通过预设前端显示接口对该结构化查询语言模板进行显示,以使用户可以输入参数到客户端中,当输入完成时,用户可以点击“完成”按钮,此时客户端将参数发送至服务器,服务器根据参数生成对应的结构化查询语句。
优选的,在根据结构化查询语言模板及参数生成结构化查询语句之后,在在数据库中执行结构化查询语句之前,还可以基于语法规则对结构化查询语句进行筛选;
在一个具体实施例中,在根据结构化查询语言模板及参数生成结构化查询语句之后,为防止出现乱码、语句格式错误、语句拼写错误等情况,服务器会基于语法规则对结构化查询语句进行筛选,将符合语法规则的结构化查询语句留下,将不符合语法规则的结构化查询语句挑出,并返回相应的提示信息至客户端,以使用户能够根据提示信息做出相应修改,最终完成结构化查询语句的生成。
S106:服务器利用结构化查询语句完成数据操作;
这里提到的数据操作具体可以包括但不限于数据读取、数据写入、数据修改、数据删除等操作;
在一个具体实施例中,当该数据操作为数据写入操作时,在完成数据写入操作之后,还可以发送数据写入成功的提示信息至客户端,同时将当前用户的登录信息、数据写入位置、数据写入内容、数据写入时间等信息进行保存,方便用户对数据来源进行追溯;数据删除操作、数据查询操作及数据修改操作的后续过程与数据写入操作的后续过程类似,这里不再赘述;
在一个具体实施例中,用户可以在客户端的输入界面输入数据查询需求,然后客户端将数据查询需求发送至服务器,服务器根据数据查询需求选择数据查询处理逻辑,并将数据查询处理逻辑添加至初始模板中,得到数据查询模板;然后获取数据查询模板对应的参数,例如目标数据库、待查询数据名称等,并根据数据查询模板及参数生成数据查询语句,最后在目标数据库中执行该数据查询语句,完成此次数据查询操作。
基于上述技术方案,本发明所提供的一种数据库数据操作的方法,在面对多种多样的业务需求时,能够根据业务需求确定结构化查询语言模板,并获取该结构化查询语言模板对应的原始参数及表达式,进而利用该表达式对原始参数进行预处理,得到目标参数,并根据该结构化查询语言模板及目标参数生成结构化查询语句,不需要用户自行对原始参数进行预处理,降低了结构化查询语句的开发成本,同时提高了用户的开发效率和测试效率。
请参见图4,其示出了本发明实施例的一种数据库数据操作的方法的流程示意图,本实施例是对图2对应的实施例中S106的具体描述,提供了服务器自行完成数据操作的技术方案,可以将本实施例与图2对应的实施例相结合得到更为优选的实施方式,本实施例可以包括以下步骤:
S201:在数据库中执行结构化查询语句,以完成数据操作。
优选的,在数据库中执行结构化查询语句之前,还可以获取数据库配置信息,并根据数据库配置信息确定对应的数据库,这里提到的数据库配置信息具体可以包括节点信息、数据库名称、测试环境节点信息、测试环境数据库、最大每秒请求数等信息;
例如,如图5所示,在一个具体实施例中,当用户第一次进行数据操作,或者需要对更换绑定的数据库时,可以通过输入数据库配置信息完成数据库的配置或更换;
在此基础上,服务器还可以根据结构化查询语言模板中的相关内容对数据库进行操作,查询语言模板中的相关内容可以包括:
创建一个数据库:create database库名(character set字符集名);
查看已创建数据库信息:show create database库名;
删除库:drop database库名;
使用库:use库名;
查看正在操作的库:select database()。
在上述技术方案的基础上,针对于某些特殊的业务需求,在执行的数据操作为数据读取操作时,还需要对读取到的数据进行二次处理,因此为了提高数据处理的效率,在执行完步骤S201之后,还可以根据业务需求确定第一处理策略,并利用第一处理策略对数据读取操作的读取结果进行处理;
可选的,这里提到的第一处理策略可以包括编码处理策略、加解密处理策略、查询处理策略、输出处理策略、修改处理策略中的至少一项;
在本步骤中,服务器在完成数据读取操作得到读取结果时,执行步骤S201中确定的处理策略对读取结果进行处理,得到二次处理结果,避免了用户自行对读取结果进行处理的麻烦,提高了处理效率;
在一个具体实施例中,例如,如图6所示,当因为业务需求需要对数据读取操作得到的角色昵称(sRoleName)进行编码处理时,现有技术中需要用户手动选择对角色昵称编码处理操作,而本发明实施例可以根据业务需求确定处理策略为编码处理策略,然后定义该编码操作(#sRoleName|urlencode#)后由系统自动处理,最后直接输出编码处理结果;
当因为业务需求,需要对读取结果进行加密操作,然后发送至某个地址时,用户只需要预先在业务需求中声明加密操作及接收位置,然后系统便可确定加密处理策略,并对读取结果进行加密操作,并发送至该接受位置即可;
输出处理策略及修改处理策略的实现过程与编码处理策略及加解密处理策略的实现过程类似,这里不再赘述,需要说明的是,在一次处理过程中,可以同时执行多个处理策略。
优选的,当完成数据读取操作得到读取结果时,还可以通过预设前端显示接口对读取结果进行显示;
在一个具体实施例中,当完成数据读取操作之后,可以根据业务需求确定对应的显示方式,例如可以通过业务需求中的特定编号来确定,1-5分别代表输出的5种显示方式,包括列表、柱状图、饼状图、折线图、直方图,在选择显示方式之后,通过预设前端显示接口对读取结果进行显示。
请参见图7,其示出了本发明实施例的一种数据库数据操作的方法的流程示意图,本实施例是对图2对应的实施例中S106的另一种具体描述,提供了服务器根据用户输入的数据操作指令完成数据操作的技术方案,可以将本实施例与图2对应的实施例相结合得到更为优选的实施方式,本实施例可以包括以下步骤:
S301:将结构化查询语句输出至预设位置;
这里提到的预设位置可以为专门用于存储已生成的结构化查询语句的存储空间,服务器将生成的结构化查询语句全部存储于此,以方便用户对结构化查询语句进行选择。
S302:当接收到数据操作指令时,根据数据操作指令在所有结构化查询语句中确定待执行语句,执行待执行语句以完成数据操作。
优选的,在上述技术方案的基础上,在执行完步骤S301之后,还可以根据数据操作指令确定第二处理策略,并利用第二处理策略对数据读取操作的读取结果进行处理,进而进一步提高数据处理的效率;
进一步的,这里提到的第二处理策略可以包括编码处理策略、加解密处理策略、查询处理策略、输出处理策略、修改处理策略中的至少一项。
下面对本发明实施例提供的一种数据库数据操作的系统进行介绍,下文描述的一种数据库数据操作的系统与上文描述的一种数据操作方法可以相互参照。
参见图8,本发明实施例提供的一种数据库数据操作的系统的结构图,如图8所示,包括:
确定模块100,用于当接收到业务需求时,根据业务需求确定结构化查询语言模板;
预处理模块200,用于获取结构化查询语言模板对应的原始参数及表达式,并利用表达式对原始参数进行预处理,得到目标参数;
语句生成模块300,用于根据结构化查询语言模板及目标参数生成结构化查询语句;
数据操作模块400,用于利用结构化查询语句完成数据操作。
本发明所提供的数据库数据操作的系统,在面对多种多样的业务需求时,能够根据业务需求确定结构化查询语言模板,并获取该结构化查询语言模板对应的原始参数及表达式,进而利用该表达式对原始参数进行预处理,得到目标参数,并根据该结构化查询语言模板及目标参数生成结构化查询语句,不需要用户自行对原始参数进行预处理,降低了结构化查询语句的开发成本,同时提高了用户的开发效率和测试效率。
在上述实施例的基础上,作为一种优选实施方式,该数据操作模块400可以包括:
第一执行子模块,用于在数据库中执行结构化查询语句,以完成数据操作。
在上述实施例的基础上,作为一种优选实施方式,还包括:
第一处理模块,用于当数据操作为数据读取操作时,根据业务需求确定第一处理策略,并利用第一处理策略对数据读取操作的读取结果进行处理。
在上述实施例的基础上,作为一种优选实施方式,该数据操作模块400可以包括:
输出子模块,用于将结构化查询语句输出至预设位置;
第二执行子模块,用于当接收到数据操作指令时,根据数据操作指令在所有结构化查询语句中确定待执行语句,执行待执行语句以完成数据操作。
在上述实施例的基础上,作为一种优选实施方式,还包括:
第二处理模块,用于根据数据操作指令确定第二处理策略,并利用第二处理策略对数据读取操作的读取结果进行处理。
在上述实施例的基础上,作为一种优选实施方式,该确定模块100可以包括:
选择子模块,用于根据业务需求选择对应的预设处理逻辑;
添加子模块,用于将预设处理逻辑添加至初始模板中,得到结构化查询语言模板。
在上述实施例的基础上,作为一种优选实施方式,还包括:
语句筛选模块,用于基于语法规则对结构化查询语句进行筛选。
关于上述实施例中的系统,其中各个单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明还提供了一种服务器,参见图9,本发明实施例提供的一种服务器的结构图,如图9所示,可以包括处理器901和存储器902。
可选的,该服务器还可以包括通信接口903、输入单元904和显示器905和通信总线906。
处理器901、存储器902、通信接口903、输入单元904、显示器905、均通过通信总线906完成相互间的通信。
在本发明实施例中,该处理器901,可以为中央处理器(Central ProcessingUnit,CPU),特定应用集成电路,数字信号处理器、现成可编程门阵列或者其他可编程逻辑器件等。
该处理器901可以调用存储器902中存储的程序。具体的,处理器可以执行上述数据库数据操作的方法的实施例中的步骤。
存储器902中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本发明实施例中,该存储器中至少存储有用于实现以下功能的程序:
当接收到业务需求时,根据业务需求确定结构化查询语言模板;
获取结构化查询语言模板对应的原始参数及表达式,并利用表达式对原始参数进行预处理,得到目标参数;
根据结构化查询语言模板及目标参数生成结构化查询语句;
利用结构化查询语句完成数据操作。
在一种可能的实现方式中,该存储器902可以包括存储程序区和存储数据区,其中,存储程序区用于存储操作系统、以及至少一个功能(比如数据操作功能)所需的应用程序等;存储数据区用于存储根据计算机的使用过程中所创建的数据。
此外,存储器902可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
该通信接口903可以为通信模块的接口,如GSM模块的接口。
本发明实施例提供的服务器还可以包括输入单元904和显示器905等等。
当然,图9所示的服务器的结构并不构成对本发明实施例中服务器的限定,在实际应用中服务器可以包括比图9所示的更多或更少的部件,或者组合某些部件。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述任一实施例服务器所执行的数据库数据操作的方法的步骤。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种数据库数据操作的方法,其特征在于,包括:
当接收到业务需求时,根据所述业务需求确定结构化查询语言模板;
获取所述结构化查询语言模板对应的原始参数及表达式,并利用所述表达式对所述原始参数进行预处理,得到目标参数;
根据所述结构化查询语言模板及所述目标参数生成结构化查询语句;
利用所述结构化查询语句完成数据操作。
2.根据权利要求1所述的方法,其特征在于,利用所述结构化查询语句完成数据操作,包括:
在数据库中执行所述结构化查询语句,以完成数据操作。
3.根据权利要求2所述的方法,其特征在于,若所述数据操作为数据读取操作,则在所述在数据库中执行所述结构化查询语句,以完成数据操作之后,还包括:
根据所述业务需求确定第一处理策略,并利用所述第一处理策略对所述数据读取操作的读取结果进行处理。
4.根据权利要求1所述的方法,其特征在于,利用所述结构化查询语句完成数据操作,包括:
将所述结构化查询语句输出至预设位置;
当接收到数据操作指令时,根据所述数据操作指令在所有所述结构化查询语句中确定待执行语句,执行所述待执行语句以完成数据操作。
5.根据权利要求4所述的方法,其特征在于,若所述数据操作为数据读取操作,则在所述在数据库中执行所述结构化查询语句,以完成数据操作之后,还包括:
根据所述数据操作指令确定第二处理策略,并利用所述第二处理策略对所述数据读取操作的读取结果进行处理。
6.根据权利要求1所述的方法,其特征在于,根据所述业务需求确定结构化查询语言模板,包括:
根据所述业务需求选择对应的预设处理逻辑;
将所述预设处理逻辑添加至初始模板中,得到所述结构化查询语言模板。
7.根据权利要求6所述的方法,其特征在于,还包括:
当接收到逻辑处理命令时,根据所述逻辑处理命令对逻辑存储空间中的所述预设处理逻辑进行处理;
其中,所述逻辑处理命令包括逻辑增加命令、逻辑修改命令、逻辑删除命令中的至少一项。
8.一种数据库数据操作的系统,其特征在于,包括:
确定模块,用于当接收到业务需求时,根据所述业务需求确定结构化查询语言模板;
预处理模块,用于获取所述结构化查询语言模板对应的原始参数及表达式,并利用所述表达式对所述原始参数进行预处理,得到目标参数;
语句生成模块,用于根据所述结构化查询语言模板及所述目标参数生成结构化查询语句;
数据操作模块,用于利用所述结构化查询语句完成数据操作。
9.一种服务器,其特征在于,包括:
处理器和存储器;
其中,所述处理器用于执行所述存储器中存储的程序;
所述存储器用于存储程序,所述程序至少用于:
当接收到业务需求时,根据所述业务需求确定结构化查询语言模板;
获取所述结构化查询语言模板对应的原始参数及表达式,并利用所述表达式对所述原始参数进行预处理,得到目标参数;
根据所述结构化查询语言模板及所述目标参数生成结构化查询语句;
利用所述结构化查询语句完成数据操作。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述数据库数据操作的方法的步骤。
CN201910959089.7A 2019-10-10 2019-10-10 数据库数据操作的方法、系统及服务器 Active CN112650766B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910959089.7A CN112650766B (zh) 2019-10-10 2019-10-10 数据库数据操作的方法、系统及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910959089.7A CN112650766B (zh) 2019-10-10 2019-10-10 数据库数据操作的方法、系统及服务器

Publications (2)

Publication Number Publication Date
CN112650766A true CN112650766A (zh) 2021-04-13
CN112650766B CN112650766B (zh) 2023-10-13

Family

ID=75342862

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910959089.7A Active CN112650766B (zh) 2019-10-10 2019-10-10 数据库数据操作的方法、系统及服务器

Country Status (1)

Country Link
CN (1) CN112650766B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113448980A (zh) * 2021-06-18 2021-09-28 青岛海尔科技有限公司 用于生成sql语句的方法及装置、电子设备
CN113515610A (zh) * 2021-06-21 2021-10-19 中盾创新档案管理(北京)有限公司 一种基于面向对象语言处理的档案管理方法
CN113553345A (zh) * 2021-07-19 2021-10-26 北京东方国信科技股份有限公司 向量化数据库的查询方法及装置
CN113672638A (zh) * 2021-08-06 2021-11-19 浙江大华技术股份有限公司 一种查询数据的方法、系统及电子设备
CN113722355A (zh) * 2021-09-15 2021-11-30 中国银行股份有限公司 业务数据处理的测试方法及装置、电子设备、存储介质
CN113742385A (zh) * 2021-09-15 2021-12-03 第四范式(北京)技术有限公司 数据查询方法及装置
CN113821501A (zh) * 2021-08-12 2021-12-21 马上消费金融股份有限公司 一种数据归档方法及装置
CN114219446A (zh) * 2021-12-17 2022-03-22 中国建设银行股份有限公司 信息处理方法、装置、设备及介质
CN114296696A (zh) * 2021-12-29 2022-04-08 中国电信股份有限公司 业务功能操作方法和装置、存储介质及电子设备
CN114416779A (zh) * 2022-03-21 2022-04-29 北京德塔精要信息技术有限公司 一种数据处理方法、装置及系统
CN115344614A (zh) * 2022-08-15 2022-11-15 中国电信股份有限公司 数据处理方法、装置、存储介质及电子设备
WO2023045054A1 (zh) * 2021-09-27 2023-03-30 苏宁易购集团股份有限公司 结构化查询语句的生成方法、装置和计算机设备
CN117235155A (zh) * 2023-11-16 2023-12-15 荣耀终端有限公司 数据统计方法、电子设备以及可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914290A (zh) * 2012-12-31 2014-07-09 杭州勒卡斯广告策划有限公司 一种操作命令处理方法及装置
CN105224544A (zh) * 2014-05-30 2016-01-06 北大方正集团有限公司 一种数据库的数据编辑方法及装置
CN107451153A (zh) * 2016-05-31 2017-12-08 北京京东尚科信息技术有限公司 输出结构化查询语句的方法和装置
CN107766381A (zh) * 2016-08-22 2018-03-06 北京京东尚科信息技术有限公司 数据查询方法、系统及电子设备
CN109446218A (zh) * 2018-09-25 2019-03-08 中国平安人寿保险股份有限公司 Sql语句生成方法、装置及计算机可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103914290A (zh) * 2012-12-31 2014-07-09 杭州勒卡斯广告策划有限公司 一种操作命令处理方法及装置
CN105224544A (zh) * 2014-05-30 2016-01-06 北大方正集团有限公司 一种数据库的数据编辑方法及装置
CN107451153A (zh) * 2016-05-31 2017-12-08 北京京东尚科信息技术有限公司 输出结构化查询语句的方法和装置
CN107766381A (zh) * 2016-08-22 2018-03-06 北京京东尚科信息技术有限公司 数据查询方法、系统及电子设备
CN109446218A (zh) * 2018-09-25 2019-03-08 中国平安人寿保险股份有限公司 Sql语句生成方法、装置及计算机可读存储介质

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113448980A (zh) * 2021-06-18 2021-09-28 青岛海尔科技有限公司 用于生成sql语句的方法及装置、电子设备
CN113515610A (zh) * 2021-06-21 2021-10-19 中盾创新档案管理(北京)有限公司 一种基于面向对象语言处理的档案管理方法
CN113553345A (zh) * 2021-07-19 2021-10-26 北京东方国信科技股份有限公司 向量化数据库的查询方法及装置
CN113672638A (zh) * 2021-08-06 2021-11-19 浙江大华技术股份有限公司 一种查询数据的方法、系统及电子设备
CN113821501A (zh) * 2021-08-12 2021-12-21 马上消费金融股份有限公司 一种数据归档方法及装置
CN113742385A (zh) * 2021-09-15 2021-12-03 第四范式(北京)技术有限公司 数据查询方法及装置
CN113722355A (zh) * 2021-09-15 2021-11-30 中国银行股份有限公司 业务数据处理的测试方法及装置、电子设备、存储介质
WO2023045054A1 (zh) * 2021-09-27 2023-03-30 苏宁易购集团股份有限公司 结构化查询语句的生成方法、装置和计算机设备
CN114219446A (zh) * 2021-12-17 2022-03-22 中国建设银行股份有限公司 信息处理方法、装置、设备及介质
CN114296696A (zh) * 2021-12-29 2022-04-08 中国电信股份有限公司 业务功能操作方法和装置、存储介质及电子设备
CN114416779A (zh) * 2022-03-21 2022-04-29 北京德塔精要信息技术有限公司 一种数据处理方法、装置及系统
CN115344614A (zh) * 2022-08-15 2022-11-15 中国电信股份有限公司 数据处理方法、装置、存储介质及电子设备
CN117235155A (zh) * 2023-11-16 2023-12-15 荣耀终端有限公司 数据统计方法、电子设备以及可读存储介质

Also Published As

Publication number Publication date
CN112650766B (zh) 2023-10-13

Similar Documents

Publication Publication Date Title
CN112650766B (zh) 数据库数据操作的方法、系统及服务器
US20210174006A1 (en) System and method for facilitating complex document drafting and management
CN110543303B (zh) 一种可视化业务平台
US6651240B1 (en) Object-oriented software development support apparatus and development support method
US7424702B1 (en) Data integration techniques for use in enterprise architecture modeling
CN105511873B (zh) 用户界面控件展示方法及装置
CN111427561A (zh) 业务代码的生成方法、装置、计算机设备和存储介质
US20220179642A1 (en) Software code change method and apparatus
US10296505B2 (en) Framework for joining datasets
CN106557307B (zh) 业务数据的处理方法及处理系统
CN110580189A (zh) 生成前端页面的方法、装置、计算机设备以及存储介质
CN111126019A (zh) 基于模式定制的报表生成方法、装置和电子设备
CN105975489A (zh) 一种基于元数据的在线sql代码补全方法
CN113535177A (zh) 一种表单生成方法、装置及设备
CN110334103A (zh) 推荐服务的更新方法、提供装置、访问装置和推荐系统
CN117453713A (zh) 多类型数据库的sql语句生成方法、设备和存储介质
CN111475602B (zh) 多版本知识图谱的存储方法、装置、存储介质及电子设备
CN108090034B (zh) 基于集群的单证代码统一编码生成方法和系统
CN115629763A (zh) 目标代码的生成方法、npu指令的显示方法及装置
CN114756224A (zh) 一种活动执行方法及装置
CN114356403A (zh) 一种基于低代码应用开发的组态数据处理方法、装置和系统
CN113506099A (zh) 申报业务的配置系统、方法、计算机设备和存储介质
CN116627390B (zh) 航空软件开发中icd文件的替代方法及装置
CN118035250B (zh) 一种基于WPS加载项实现Excel报表导出的方法
CN114547038B (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
GR01 Patent grant
GR01 Patent grant