CN112527309A - As400操作语句转换优化方法、装置、设备及存储介质 - Google Patents

As400操作语句转换优化方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112527309A
CN112527309A CN202011449102.3A CN202011449102A CN112527309A CN 112527309 A CN112527309 A CN 112527309A CN 202011449102 A CN202011449102 A CN 202011449102A CN 112527309 A CN112527309 A CN 112527309A
Authority
CN
China
Prior art keywords
statement
target
converted
file
field
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
CN202011449102.3A
Other languages
English (en)
Other versions
CN112527309B (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.)
China Citic Bank Corp Ltd
Original Assignee
China Citic Bank Corp 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 China Citic Bank Corp Ltd filed Critical China Citic Bank Corp Ltd
Priority to CN202011449102.3A priority Critical patent/CN112527309B/zh
Publication of CN112527309A publication Critical patent/CN112527309A/zh
Application granted granted Critical
Publication of CN112527309B publication Critical patent/CN112527309B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开一种AS400操作语句转换优化方法、装置、设备及存储介质,其中,AS400操作语句转换优化方法包括步骤:获取目标AS400文件;从所述目标AS400文件中筛选出至少一段满足预设条件的待转换语句,所述预设条件为所述待转换语句位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中,所述待转换语句为包括READ语句和ITER语句且包括有目标字段的条件判断语句,所述目标字段预先记录在用于访问分布式数据库的物理文件中;将所述待转换语句转换为while语句或where语句中的一种。本申请能够在需要将原本运行于AS/400系列小型机的语句转换为JAVA语句时,对AS/400系列小型机的语句的程序逻辑进行优化,即将程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。

Description

AS400操作语句转换优化方法、装置、设备及存储介质
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种AS400操作语句转换优化方法、装置、设备及存储介质。
背景技术
目前,银行核心系统基本都运行在IBM公司的Z系列大型机和AS/400系列小型机上。
随着AS/400系列小型机上被市场淘汰,需要将原本运行于AS/400系列小型机的语句运行在其他型号的设备上。然而,直接将原本运行于AS/400系列小型机的语句运行在其他型号的设备,存在运行效率低的缺点。
发明内容
本申请实施例的目的在于公开一种AS400操作语句转换优化方法、装置、设备及存储介质,用于将原本运行于AS/400系列小型机的语句进行转换,以使得原本运行于AS/400系列小型机的语句运行于其他设备中时,具有更优的运行效率。
为此,本申请第一方面公开一种AS400操作语句转换优化方法,所述方法包括步骤:
获取目标AS400文件;
从所述目标AS400文件中筛选出至少一段满足预设条件的待转换语句,所述预设条件为所述待转换语句位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中,所述待转换语句为包括READ语句和ITER语句且包括有目标字段的条件判断语句,所述目标字段预先记录在用于访问分布式数据库的物理文件中;
将所述待转换语句转换为while语句或where语句中的一种。
在本申请第一方面中,通过将目标AS400文件中位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。
在本申请第一方面中,作为一种可选的实施方式,所述从所述目标AS400文件中筛选出至少一段满足预设条件的待转换语句,包括:
从所述目标AS400文件中筛选出所述SETLL语句和/或所述SETGT语句;
确定所述SETLL语句中循环结构包括的语句和/或所述SETGT语句中循环结构包括的语句;
从所述SETLL语句中循环结构包括的语句和/或所述SETGT语句中循环结构包括的语句中提取所述条件判断语句;
判断所述条件判断语句是否包括所述READ语句和所述ITER语句;
当所述条件判断语句包括所述READ语句和所述ITER语句时,判断所述条件判断语句包括所述READ语句和所述ITER语句是否包括有所述目标字段,若包括,则将所述条件判断语句作为所述待转换语句。
在本可选的实施方式中,通过从目标AS400文件中筛选出SETLL语句和/或SETGT语句,进而能够确定SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句,进而能够从SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句中提取条件判断语句,进而能够判断条件判断语句是否包括READ语句和ITER语句,进而当条件判断语句包括READ语句和ITER语句时,能够判断条件判断语句包括READ语句和ITER语句是否包括有目标字段,若包括,则将条件判断语句作为待转换语句
在本申请第一方面中,作为一种可选的实施方式,所述判断所述条件判断语句包括所述READ语句和所述ITER语句是否包括有所述目标字段,包括:
按照预设的拆分规则将所述待转换语句拆分为字段集、字段值和赋值符号;
判断所述字段集中是否包括所述物理文件中的字段,若是,则确定所READ语句和所述ITER语句包括有所述目标字段,且将相匹配的所述物理文件中的字段作为所述目标字段。
在本可选的实施方式中,按照预设的拆分规则能够将待转换语句拆分为字段集、字段值和赋值符号,进而能够判断字段集中是否包括物理文件中的字段,若是,则确定所READ语句和ITER语句包括有目标字段,且将相匹配的物理文件中的字段作为目标字段。
在本申请第一方面中,作为一种可选的实施方式,所述按照预设的拆分规则将所述待转换语句拆分为字段集、字段值和赋值符号,包括:
以所述赋值符号为划分节点拆分所述待转换语句,其中,所述赋值符号的左边的语句作为所述字段集,所述赋值符号右边的语句为所述字段值。
在本可选的实施方式中,通过以赋值符号为划分节点,能够拆分待转换语句为字段集,赋值符号、字段值。
在本申请第一方面中,作为一种可选的实施方式,所述将所述待转换语句转换为while语句或where语句中的一种,包括:
根据所述带转换语句的所述字段集中的每个字段映射成分布式数据库中的字段名称,并将所述分布式数据库中的字段名称作为所述目标字段集;
将所述带转换语句的所述字段值作为所述目标字段值;
将所述待转换语句的所述字赋值符号取反并得到目标符号;
将所述目标字段集、所述目标字段值、所述目标符号拼接得到所述while语句或所述where语句中的一种。
在本可选的实施方式中,通过将目标字段集、目标字段值、目标符号拼接,进而能够得到while语句或where语句中的一种
在本申请第一方面中,作为一种可选的实施方式,所述将所述目标字段集、所述目标字段值、所述目标符号拼接得到所述while语句或所述where语句中的一种,包括:
判断所述目标字段集指向的数据访问对象是否在所述分布式数据库存在;
若所述数据访问对象存在,则判断所述目标字段集指向的数据表是否被定义;
当所述数据表被定时,判断所述目标字段值的类型是否合法;
若所述目标字段值的类型合法,则将所述目标字段值用引号封闭;
将所述用引号封闭后的所述目标字段值、所述目标字段集、所述目标符号拼接得到所述while语句或所述where语句中的一种。
在本可选的实施方式中,通过将用引号封闭后的目标字段值、目标字段集、目标符号拼接,进而能够得到while语句或where语句中的一种。
在本申请第一方面中,作为一种可选的实施方式,在所述将所述待转换语句转换为while语句或where语句中的一种之后,所述方法还包括:
将所述while语句或所述where语句中的一种运行于目标系统中,其中,所述目标系统为X86核心系统。
在本可选可选的实施方式中,将while语句或where语句中的一种运行于X86核心系统中,具有更优的运行效率。
本申请第二方面公开一种AS400操作语句转换优化装置,所述装置包括:
获取模块,用于获取目标AS400文件;
筛选模块,用于从所述目标AS400文件中筛选出至少一段满足预设条件的待转换语句,所述预设条件为所述待转换语句位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中,所述待转换语句为包括READ语句和ITER语句且包括有目标字段的条件判断语句,所述目标字段预先记录在用于访问分布式数据库的物理文件中;
转换模块,用于将所述待转换语句转换为while语句或where语句中的一种。
本申请第二方面的装置通过执行AS400操作语句转换优化方法,能够将目标AS400文件中位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。
本申请第三方面公开一种AS400操作语句转换优化装置设备,所述设备包括:
处理器;以及
存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,使得所述处理器执行本申请实施例第一方面公开的AS400操作语句转换优化方法。
本申请第三方面的设备通过执行AS400操作语句转换优化方法,能够将目标AS400文件中位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。
本申请第四方面公开一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行本申请第一方面公开的AS400操作语句转换优化方法。
本申请第四方面的存储介质通过执行AS400操作语句转换优化方法,能够将目标AS400文件中位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。其中:
图1是本申请实施例公开的一种AS400操作语句转换优化方法的流程示意图;
图2是本申请实施例公开的一种AS400操作语句转换优化装置的结构示意图;
图3是本申请实施例公开的一种AS400操作语句转换优化设备的结构示意图。
具体实施方式
请参阅图1,图1是本申请实施例公开的一种AS400操作语句转换优化方法的流程示意图。如图1所示,该AS400操作语句转换优化方法包括步骤:
101、获取目标AS400文件。
102、从目标AS400文件中筛选出至少一段满足预设条件的待转换语句,预设条件为待转换语句位于目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中,待转换语句为包括READ语句和ITER语句且包括有目标字段的条件判断语句,目标字段预先记录在用于访问分布式数据库的物理文件中。
103、将待转换语句转换为while语句或where语句中的一种。
本申请实施例通过将目标AS400文件中位于目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。
在本申请实施例中,待转换语句用于转换为运行于分布式系统的JAVA语句。
在本申请实施例中,作为一种可选的实施方式,步骤102:从目标AS400文件中筛选出至少一段满足预设条件的待转换语句,包括子步骤:
从目标AS400文件中筛选出SETLL语句和/或SETGT语句;
确定SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句;
从SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句中提取条件判断语句;
判断条件判断语句是否包括READ语句和ITER语句;
当条件判断语句包括READ语句和ITER语句时,判断条件判断语句包括READ语句和ITER语句是否包括有目标字段,若包括,则将条件判断语句作为待转换语句。
在本可选的实施方式中,通过从目标AS400文件中筛选出SETLL语句和/或SETGT语句,进而能够确定SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句,进而能够从SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句中提取条件判断语句,进而能够判断条件判断语句是否包括READ语句和ITER语句,进而当条件判断语句包括READ语句和ITER语句时,能够判断条件判断语句包括READ语句和ITER语句是否包括有目标字段,若包括,则将条件判断语句作为待转换语句
在本申实施例中,作为一种可选的实施方式,步骤:判断条件判断语句包括READ语句和ITER语句是否包括有目标字段,包括:
按照预设的拆分规则将待转换语句拆分为字段集、字段值和赋值符号;
判断字段集中是否包括物理文件中的字段,若是,则确定所READ语句和ITER语句包括有目标字段,且将相匹配的物理文件中的字段作为目标字段。
在本可选的实施方式中,按照预设的拆分规则能够将待转换语句拆分为字段集、字段值和赋值符号,进而能够判断字段集中是否包括物理文件中的字段,若是,则确定所READ语句和ITER语句包括有目标字段,且将相匹配的物理文件中的字段作为目标字段。
在本申请实施例中,作为一种可选的实施方式,步骤:按照预设的拆分规则将待转换语句拆分为字段集、字段值和赋值符号,包括子步骤:
以赋值符号为划分节点拆分待转换语句,其中,赋值符号的左边的语句作为字段集,赋值符号右边的语句为字段值。
在本可选的实施方式中,通过以赋值符号为划分节点,能够拆分待转换语句为字段集,赋值符号、字段值。
在本申请实施例中,作为一种可选的实施方式,步骤103:将待转换语句转换为while语句或where语句中的一种,包括子步骤:
根据带转换语句的字段集中的每个字段映射成分布式数据库中的字段名称,并将分布式数据库中的字段名称作为目标字段集;
将带转换语句的字段值作为目标字段值;
将待转换语句的字赋值符号取反并得到目标符号;
将目标字段集、目标字段值、目标符号拼接得到while语句或where语句中的一种。
在本可选的实施方式中,通过将目标字段集、目标字段值、目标符号拼接,进而能够得到while语句或where语句中的一种
在本申请实施例中,作为一种可选的实施方式,步骤:将目标字段集、目标字段值、目标符号拼接得到while语句或where语句中的一种,包括子步骤:
判断目标字段集指向的数据访问对象是否在分布式数据库存在;
若数据访问对象存在,则判断目标字段集指向的数据表是否被定义;
当数据表被定时,判断目标字段值的类型是否合法;
若目标字段值的类型合法,则将目标字段值用引号封闭;
将用引号封闭后的目标字段值、目标字段集、目标符号拼接得到while语句或where语句中的一种。
在本可选的实施方式中,通过将用引号封闭后的目标字段值、目标字段集、目标符号拼接,进而能够得到while语句或where语句中的一种。
在本申请实施例中,作为一种可选的实施方式,在步骤103将待转换语句转换为while语句或where语句中的一种之后,本申请实施例的方法还包括步骤:
将while语句或where语句中的一种运行于目标系统中,其中,目标系统为X86核心系统。
在本可选可选的实施方式中,将while语句或where语句中的一种运行于X86核心系统中,具有更优的运行效率。
请参阅图2,图2是本申请实施例公开的一种AS400操作语句转换优化装置的结构示意图。如图2所示,该AS400操作语句转换优化装置包括:
获取模块201,用于获取目标AS400文件。
筛选模块202,用于从目标AS400文件中筛选出至少一段满足预设条件的待转换语句,预设条件为待转换语句位于目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中,待转换语句为包括READ语句和ITER语句且包括有目标字段的条件判断语句,目标字段预先记录在用于访问分布式数据库的物理文件中。
转换模块203,用于将待转换语句转换为while语句或where语句中的一种。
在本申请实施例中,待转换语句用于转换为运行于分布式系统的JAVA语句。
本申请实施例的装置通过执行AS400操作语句转换优化方法,能够将目标AS400文件中位于目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。
在本申请实施例中,作为一种可选的实施方式,筛选模块202执行从目标AS400文件中筛选出至少一段满足预设条件的待转换语句的具体方式为:
从目标AS400文件中筛选出SETLL语句和/或SETGT语句;
确定SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句;
从SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句中提取条件判断语句;
判断条件判断语句是否包括READ语句和ITER语句;
当条件判断语句包括READ语句和ITER语句时,判断条件判断语句包括READ语句和ITER语句是否包括有目标字段,若包括,则将条件判断语句作为待转换语句。
在本可选的实施方式中,通过从目标AS400文件中筛选出SETLL语句和/或SETGT语句,进而能够确定SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句,进而能够从SETLL语句中循环结构包括的语句和/或SETGT语句中循环结构包括的语句中提取条件判断语句,进而能够判断条件判断语句是否包括READ语句和ITER语句,进而当条件判断语句包括READ语句和ITER语句时,能够判断条件判断语句包括READ语句和ITER语句是否包括有目标字段,若包括,则将条件判断语句作为待转换语句
在本申实施例中,作为一种可选的实施方式,筛选模块202执行判断条件判断语句包括READ语句和ITER语句是否包括有目标字段的具体方式为:
按照预设的拆分规则将待转换语句拆分为字段集、字段值和赋值符号;
判断字段集中是否包括物理文件中的字段,若是,则确定所READ语句和ITER语句包括有目标字段,且将相匹配的物理文件中的字段作为目标字段。
在本可选的实施方式中,按照预设的拆分规则能够将待转换语句拆分为字段集、字段值和赋值符号,进而能够判断字段集中是否包括物理文件中的字段,若是,则确定所READ语句和ITER语句包括有目标字段,且将相匹配的物理文件中的字段作为目标字段。
在本申请实施例中,作为一种可选的实施方式,筛选模块202执行按照预设的拆分规则将待转换语句拆分为字段集、字段值和赋值符号的具体方式为:
以赋值符号为划分节点拆分待转换语句,其中,赋值符号的左边的语句作为字段集,赋值符号右边的语句为字段值。
在本可选的实施方式中,通过以赋值符号为划分节点,能够拆分待转换语句为字段集,赋值符号、字段值。
在本申请实施例中,作为一种可选的实施方式,转换模块203执行将待转换语句转换为while语句或where语句中的一种的具体方式为:
根据带转换语句的字段集中的每个字段映射成分布式数据库中的字段名称,并将分布式数据库中的字段名称作为目标字段集;
将带转换语句的字段值作为目标字段值;
将待转换语句的字赋值符号取反并得到目标符号;
将目标字段集、目标字段值、目标符号拼接得到while语句或where语句中的一种。
在本可选的实施方式中,通过将目标字段集、目标字段值、目标符号拼接,进而能够得到while语句或where语句中的一种
在本申请实施例中,作为一种可选的实施方式,转换模块203执行将目标字段集、目标字段值、目标符号拼接得到while语句或where语句中的一种的具体方式为:
判断目标字段集指向的数据访问对象是否在分布式数据库存在;
若数据访问对象存在,则判断目标字段集指向的数据表是否被定义;
当数据表被定时,判断目标字段值的类型是否合法;
若目标字段值的类型合法,则将目标字段值用引号封闭;
将用引号封闭后的目标字段值、目标字段集、目标符号拼接得到while语句或where语句中的一种。
在本可选的实施方式中,通过将用引号封闭后的目标字段值、目标字段集、目标符号拼接,进而能够得到while语句或where语句中的一种。
在本申请实施例中,作为一种可选的实施方式,本申请实施例的装置还包括:
运行模块,用于将while语句或where语句中的一种运行于目标系统中,其中,目标系统为X86核心系统。
在本可选可选的实施方式中,将while语句或where语句中的一种运行于X86核心系统中,具有更优的运行效率。
请参阅图3,图3是本申请实施例公开的一种AS400操作语句转换优化设备的结构示意图。如图3所示,该AS400操作语句转换优化设备包括:
处理器301;以及
存储器302,配置用于存储机器可读指令,指令在由处理器301执行时,使得处理器执行本申请实施例一公开的AS400操作语句转换优化方法。
本申请实施例的设备通过执行AS400操作语句转换优化方法,能够将目标AS400文件中位于目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。
本申请实施例公开一种存储介质,存储介质存储有计算机程序,计算机程序被处理器执行本申请实施例一公开的AS400操作语句转换优化方法。
本申请实施例的存储介质通过执行AS400操作语句转换优化方法,能够将目标AS400文件中位于目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。
本申请实施例公开一种计算机产品,计算机产品存储有计算机程序,计算机程序用于执行本申请实施例一公开的AS400操作语句转换优化方法。
本申请实施例的计算机产品通过执行AS400操作语句转换优化方法,能够将目标AS400文件中位于目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中的、且包括READ语句和ITER语句且包括有目标字段的条件判断语句转换为while语句或where语句中的一种,进而对语句的程序逻辑进行优化,即程序代码直接转为while语句或where语句,以减少结果集而提高运行性能。。
在本申请所公开的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,定位基站,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种AS400操作语句转换优化方法,其特征在于,所述方法包括:
获取目标AS400文件;
从所述目标AS400文件中筛选出至少一段满足预设条件的待转换语句,所述预设条件为所述待转换语句位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中,所述待转换语句为包括READ语句和ITER语句且包括有目标字段的条件判断语句,所述目标字段预先记录在用于访问分布式数据库的物理文件中;
将所述待转换语句转换为while语句或where语句中的一种。
2.如权利要求1所述的方法,其特征在于,所述从所述目标AS400文件中筛选出至少一段满足预设条件的待转换语句,包括:
从所述目标AS400文件中筛选出所述SETLL语句和/或所述SETGT语句;
确定所述SETLL语句中循环结构包括的语句和/或所述SETGT语句中循环结构包括的语句;
从所述SETLL语句中循环结构包括的语句和/或所述SETGT语句中循环结构包括的语句中提取所述条件判断语句;
判断所述条件判断语句是否包括所述READ语句和所述ITER语句;
当所述条件判断语句包括所述READ语句和所述ITER语句时,判断所述条件判断语句包括所述READ语句和所述ITER语句是否包括有所述目标字段,若包括,则将所述条件判断语句作为所述待转换语句。
3.如权利要求1所述的方法,其特征在于,所述判断所述条件判断语句包括所述READ语句和所述ITER语句是否包括有所述目标字段,包括:
按照预设的拆分规则将所述待转换语句拆分为字段集、字段值和赋值符号;
判断所述字段集中是否包括所述物理文件中的字段,若是,则确定所READ语句和所述ITER语句包括有所述目标字段,且将相匹配的所述物理文件中的字段作为所述目标字段。
4.如权利要求3所述的方法,其特征在于,所述按照预设的拆分规则将所述待转换语句拆分为字段集、字段值和赋值符号,包括:
以所述赋值符号为划分节点拆分所述待转换语句,其中,所述赋值符号的左边的语句作为所述字段集,所述赋值符号右边的语句为所述字段值。
5.如权利要求3所述的方法,其特征在于,所述将所述待转换语句转换为while语句或where语句中的一种,包括:
根据所述带转换语句的所述字段集中的每个字段映射成分布式数据库中的字段名称,并将所述分布式数据库中的字段名称作为所述目标字段集;
将所述带转换语句的所述字段值作为所述目标字段值;
将所述待转换语句的所述字赋值符号取反并得到目标符号;
将所述目标字段集、所述目标字段值、所述目标符号拼接得到所述while语句或所述where语句中的一种。
6.如权利要求5所述的方法,其特征在于,所述将所述目标字段集、所述目标字段值、所述目标符号拼接得到所述while语句或所述where语句中的一种,包括:
判断所述目标字段集指向的数据访问对象是否在所述分布式数据库存在;
若所述数据访问对象存在,则判断所述目标字段集指向的数据表是否被定义;
当所述数据表被定时,判断所述目标字段值的类型是否合法;
若所述目标字段值的类型合法,则将所述目标字段值用引号封闭;
将所述用引号封闭后的所述目标字段值、所述目标字段集、所述目标符号拼接得到所述while语句或所述where语句中的一种。
7.如权利要求1所述的方法,其特征在于,在所述将所述待转换语句转换为while语句或where语句中的一种之后,所述方法还包括:
将所述while语句或所述where语句中的一种运行于目标系统中,其中,所述目标系统为X86核心系统。
8.一种AS400操作语句转换优化装置,其特征在于,所述装置包括:
获取模块,用于获取目标AS400文件;
筛选模块,用于从所述目标AS400文件中筛选出至少一段满足预设条件的待转换语句,所述预设条件为所述待转换语句位于所述目标AS400文件中的SETLL语句和/或SETGT语句后的循环处理中,所述待转换语句为包括READ语句和ITER语句且包括有目标字段的条件判断语句,所述目标字段预先记录在用于访问分布式数据库的物理文件中;
转换模块,用于将所述待转换语句转换为while语句或where语句中的一种。
9.一种AS400操作语句转换优化设备,其特征在于,所述设备包括:
处理器;以及
存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的AS400操作语句转换优化方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行如权利要求1-7任一项所述的AS400操作语句转换优化方法。
CN202011449102.3A 2020-12-11 2020-12-11 As400操作语句转换优化方法、装置、设备及存储介质 Active CN112527309B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011449102.3A CN112527309B (zh) 2020-12-11 2020-12-11 As400操作语句转换优化方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011449102.3A CN112527309B (zh) 2020-12-11 2020-12-11 As400操作语句转换优化方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN112527309A true CN112527309A (zh) 2021-03-19
CN112527309B CN112527309B (zh) 2024-08-06

Family

ID=74998702

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011449102.3A Active CN112527309B (zh) 2020-12-11 2020-12-11 As400操作语句转换优化方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112527309B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030226132A1 (en) * 2001-05-11 2003-12-04 David Tondreau Method and system for transforming legacy software applications into modern object-oriented systems
CN101770363A (zh) * 2005-06-27 2010-07-07 奎朴兹有限公司 代码转换
CN110879710A (zh) * 2019-07-24 2020-03-13 中信银行股份有限公司 一种rpg程序自动转成java程序的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030226132A1 (en) * 2001-05-11 2003-12-04 David Tondreau Method and system for transforming legacy software applications into modern object-oriented systems
CN101770363A (zh) * 2005-06-27 2010-07-07 奎朴兹有限公司 代码转换
CN110879710A (zh) * 2019-07-24 2020-03-13 中信银行股份有限公司 一种rpg程序自动转成java程序的方法

Also Published As

Publication number Publication date
CN112527309B (zh) 2024-08-06

Similar Documents

Publication Publication Date Title
CN109445834B (zh) 基于抽象语法树的程序代码相似性快速比较方法
CN111324784A (zh) 一种字符串处理方法及装置
CN101809567A (zh) 文本串的二次散列提取
US20190228085A1 (en) Log file pattern identifier
CN108256870B (zh) 基于拓扑结构生成描述信息及更新、数据处理方法和装置
CN110019542B (zh) 企业关系的生成、生成组织成员数据库及识别同名成员
CN109858025B (zh) 一种地址标准化语料的分词方法及系统
CN101799802A (zh) 利用结构信息进行实体关系提取的方法和系统
CN112839012A (zh) 僵尸程序域名识别方法、装置、设备及存储介质
CN106503003A (zh) 一种可扩展标记语言xml文档的压缩、解压方法和装置
US20030121005A1 (en) Archiving and retrieving data objects
CN116089663A (zh) 一种规则表达式匹配方法、装置及计算机可读存储介质
CN114398315A (zh) 一种数据存储方法、系统、存储介质及电子设备
CN112527309A (zh) As400操作语句转换优化方法、装置、设备及存储介质
CN115796146A (zh) 一种文件对比方法及装置
CN115878803A (zh) 一种敏感数据检测方法、系统、计算机终端及存储介质
CN113157946B (zh) 实体链接方法、装置、电子设备及存储介质
CN112686029B (zh) 用于数据库审计系统的sql新语句识别方法及装置
CN113609279B (zh) 一种物料型号提取方法、装置及计算机设备
CN115617841A (zh) 一种数据查询语句的生成方法、系统、设备及存储介质
CN101576877A (zh) 一种快速分词的实现方法
CN110968990B (zh) 一种表格解析方法及装置
CN113688615A (zh) 一种字段注释生成、字符串理解方法、设备及存储介质
CN111401005A (zh) 文本转换方法、装置及可读存储介质
CN112394936B (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