程序语句处理方法、装置、计算机设备和计算机存储介质制造方法及图纸

技术编号:22688815 阅读:24 留言:0更新日期:2019-11-30 03:31
本申请涉及一种程序语句处理方法、装置、计算机设备和计算机存储介质。方法包括:获取程序语句;确定程序语句中的重复语句;当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果;缓存查询结果;当检测到含有与第一语句中查询字段相同的目标程序语句时,根据目标程序语句从缓存的查询结果中查询对应的目标结果。采用本申请的方案能够提高程序语句的处理效率。

Program statement processing method, device, computer equipment and computer storage medium

The application relates to a program statement processing method, a device, a computer device and a computer storage medium. The methods include: obtaining program statement; determining the repeated statement in program statement; obtaining the query result corresponding to the first statement when the repeated statement is the first statement used for query; caching the query result; querying the corresponding target result from the cached query result according to the target program statement when the target program statement with the same query field in the first statement is detected \u3002 The scheme of the application can improve the processing efficiency of program statements.

【技术实现步骤摘要】
程序语句处理方法、装置、计算机设备和计算机存储介质
本申请涉及计算机
,特别是涉及一种程序语句处理方法、装置、计算机设备和计算机存储介质。
技术介绍
随着计算机技术的发展,程序越来越完善,因此,每个程序中的语句数量也越来越多。当语句出现冗余时,会出现反复调用的情况。目前的程序语句处理方法,存在处理效率低的问题。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够提高程序语句处理效率的程序语句处理方法、装置、计算机设备和计算机存储介质。一种程序语句处理方法,方法包括:获取程序语句;确定程序语句中的重复语句;当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果;缓存查询结果;当检测到含有与第一语句中查询字段相同的目标程序语句时,根据目标程序语句从缓存的查询结果中查询对应的目标结果。在其中一个实施例中,当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果,包括:当重复语句为用于查询的第一语句,且重复语句中的参数不发生变化时,获取第一语句对应的查询结果。在其中一个实施例中,当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果,包括:当重复语句为用于查询的第一语句,且重复语句中的参数发生变化,且重复语句不在循环中时,获取第一语句对应的查询结果。根据目标程序语句从缓存的查询结果中查询对应的目标结果,包括:根据目标程序语句中的查询字段以及对应的参数从缓存的查询结果中查询对应的目标结果。在其中一个实施例中,当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果,包括:当重复语句为用于查询的第一语句,且重复语句中的参数发生变化,且重复语句在循环中时,执行重复语句对应的循环;当循环执行完毕时,得到循环结果;根据循环结果获取第一语句对应的查询结果。在其中一个实施例中,检测重复语句在循环中的方式,包括:获取程序语句中的循环开始标记以及对应的循环结束标记;当重复语句为循环开始标记以及对应的循环结束标记之间的语句时,确定重复语句在循环中。在其中一个实施例中,获取第一语句对应的查询结果,包括:获取第一语句对应的查询结果的信息量;当查询结果的信息量小于或等于信息量阈值时,获取查询结果。在其中一个实施例中,确定程序语句中的重复语句,包括:当程序语句的执行次数大于预设执行次数时,通过调用至少两次程序统计程序语句的重复比例;当重复比例大于预设比例时,确定程序语句为重复语句。在其中一个实施例中,该程序语句处理方法还包括:当重复语句为用于更新的第二语句,且第二语句在循环中时,执行第二语句对应的循环;当执行第二语句对应的循环达到预设循环次数时,更新第二语句对应的数据库。一种程序语句处理装置,所述装置包括:第一获取模块,用于获取程序语句;确定模块,用于确定程序语句中的重复语句;第二获取模块,用于当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果;缓存模块,用于缓存查询结果;查询模块,用于当检测到含有与第一语句中查询字段相同的目标程序语句时,根据目标程序语句从缓存的查询结果中查询对应的目标结果。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:获取程序语句;确定程序语句中的重复语句;当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果;缓存查询结果;当检测到含有与第一语句中查询字段相同的目标程序语句时,根据目标程序语句从缓存的查询结果中查询对应的目标结果。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:获取程序语句;确定程序语句中的重复语句;当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果;缓存查询结果;当检测到含有与第一语句中查询字段相同的目标程序语句时,根据目标程序语句从缓存的查询结果中查询对应的目标结果。上述程序语句处理方法、装置、计算机设备和存储介质,通过获取程序语句,确定程序语句中的重复语句,能得到程序语句中的冗余代码;当重复语句为用于查询的第一语句时,获取第一语句对应的查询结果,缓存查询结果,当检测到含有与第一语句中查询字段相同的目标程序语句时,根据目标程序语句从缓存的查询结果中查询对应的目标结果,则当遇到程序中的重复语句时,不需要遍历整个数据库或者文件路径等,只需要查询一次,后续可直接从缓存中得到结果,优化该程序,提高程序语句的处理效率。附图说明图1为一个实施例中程序语句处理方法的应用环境图;图2为一个实施例中程序语句处理方法的流程示意图;图3为一个实施例中确定重复语句的流程示意图;图4为另一个实施例中程序语句处理方法的流程示意图;图5为一个实施例中程序语句处理装置的结构框图;图6为一个实施例中计算机设备的内部结构图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。本申请实施例中提供的程序语句方法,可以应用于如图1的计算机设备中。该计算机设备可以为终端或服务器。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。在一个实施例中,如图2所示,提供了一种程序语句处理方法,以该方法应用于图1的计算机设备为例进行说明,包括以下步骤:步骤202,获取程序语句。其中,程序语句是指用程序语言写成的语句。程序语言例如可以是C语言、C++或者SQL(StructuredQueryLanguage,结构化查询语言)等不限于此。那么程序语句可以是C语言语句、C++语句或者SQL语句等不限于此。程序语句可由数字、字母、符号中的一种或多种组成。具体地,计算机设备从第三方设备或者该计算机设备中获取某一程序中的所有程序语句。步骤204,确定程序语句中的重复语句。其中,重复语句是指在该程序中重复出现的语句。重复语句的数量不限。具体地,计算机设备遍历该程序,确定所有程序语句中重复出现的语句。本实施例中,计算机设备遍历一次程序,当检测到程序语句中存在执行次数大于预设执行次数时,确定该程序语句为重复语句。例如,循环1:(循环10次)标记(循环1开始)select*fromid=4标记(循环1结束)那么,select*fromid=4循环了10次,该语句可为重复语句。本实施例中,计算机设备遍历一次程序,存储或标记程序语句中存在执行次数大于预设执行次数的程序语句。或者,计算机设备调用至少两次该程序,统计该程序语句的重复次数与调用次数的重复比例,当重复比例大于预设比例时,确定该程序语句为重复语句。步骤206,当重复语句为用于查询的第一语句时,获取第一语句对应的查本文档来自技高网...

【技术保护点】
1.一种程序语句处理方法,所述方法包括:/n获取程序语句;/n确定所述程序语句中的重复语句;/n当所述重复语句为用于查询的第一语句时,获取所述第一语句对应的查询结果;/n缓存所述查询结果;/n当检测到含有与所述第一语句中查询字段相同的目标程序语句时,根据所述目标程序语句从缓存的所述查询结果中查询对应的目标结果。/n

【技术特征摘要】
1.一种程序语句处理方法,所述方法包括:
获取程序语句;
确定所述程序语句中的重复语句;
当所述重复语句为用于查询的第一语句时,获取所述第一语句对应的查询结果;
缓存所述查询结果;
当检测到含有与所述第一语句中查询字段相同的目标程序语句时,根据所述目标程序语句从缓存的所述查询结果中查询对应的目标结果。


2.根据权利要求1所述的方法,其特征在于,所述当所述重复语句为用于查询的第一语句时,获取所述第一语句对应的查询结果,包括:
当所述重复语句为用于查询的第一语句,且所述重复语句中的参数不发生变化时,获取所述第一语句对应的查询结果。


3.根据权利要求1所述的方法,其特征在于,所述当所述重复语句为用于查询的第一语句时,获取所述第一语句对应的查询结果,包括:
当所述重复语句为用于查询的第一语句,且重复语句中的参数发生变化,且所述重复语句不在循环中时,获取所述第一语句对应的查询结果;
所述根据所述目标程序语句从缓存的所述查询结果中查询对应的目标结果,包括:
根据所述目标程序语句中的查询字段以及对应的参数从缓存的所述查询结果中查询对应的目标结果。


4.根据权利要求1所述的方法,其特征在于,所述当所述重复语句为用于查询的第一语句时,获取所述第一语句对应的查询结果,包括:
当所述重复语句为用于查询的第一语句,且所述重复语句中的参数发生变化,且所述重复语句在循环中时,执行所述重复语句对应的循环;
当所述循环执行完毕时,得到循环结果;
根据所述循环结果获取所述第一语句对应的查询结果。


5.根据权利要求4所述的方法,其特征在于,检测重复语句在循环中的方式,包括:
获取程序语句中的循环开始标记以及对应的循环结束标记;
当所述重复语句为循环开始标记以及对应的循...

【专利技术属性】
技术研发人员:戴勇张国锐
申请(专利权)人:金蝶软件中国有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1