System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 代码转换方法、装置、电子设备、存储介质及程序产品制造方法及图纸_技高网

代码转换方法、装置、电子设备、存储介质及程序产品制造方法及图纸

技术编号:40458697 阅读:9 留言:0更新日期:2024-02-22 23:14
本发明专利技术实施例提供一种代码转换方法、装置、电子设备、存储介质及程序产品,属于计算机程序技术领域。该代码转换方法包括:获取第一文件及配置信息,第一文件包括内嵌第一类型数据库操作语句的代码文件;基于配置信息,调用预设的转换组件,将第一文件转换成第二文件,第二文件包括内嵌第二类型数据库操作语句的代码文件,转换组件包括转换函数,转换函数用于将第一类型数据库操作语句转换为对应的第二类型数据库操作语句。通过预设的转换组件,将内嵌第一类型数据库操作语句的代码文件快速、标准地转换为内嵌第二类型数据库操作语句的代码文件。对于代码量大的业务系统,可以提升代码改造的效率,可以使转换更准确,不会出现漏字段的情况等。

【技术实现步骤摘要】

本申请涉及计算机程序,具体涉及一种代码转换方法、装置、电子设备、存储介质及程序产品


技术介绍

1、金融行业的信息系统作为关键信息基础设施,直接关系到经济、社会等的正常运行。金融行业对信息化系统的安全、自主、可控等提出了新的要求。其中,对于数据库的替换,需要将大量的oracle的c代码,需要转换为linux的c代码。

2、oracle支持在几种高级语言(例如,c、cobol、ada、pascal、pl/i等,可以称为宿主语言)内嵌入sql语句,或者oracle库函数调用来访问数据库。通过上述高级语言开发的程序,可以称为pro*程序,例如,pro*c、pro*cobol等。其中,pro*c是oracle提供的应用程序专用开发工具,以c语言为宿主语言,在c程序中嵌入sql语句,进行数据库操作。它把过程化语言c和非过程化语言sql完善地结合起来,具有完备的过程处理能力,又能完成数据库的处理任务。在pro*c程序中利用嵌入sql可以完成动态地建立、修改、删除数据库中的表,也可以查询、插入、修改、删除数据库表中的行,还可以实现事务的提交和回滚等。

3、在完成oracle的c代码转换为linux的c代码的改造中,面临的问题包括:两者之间从文件后缀、编译方式、语法格式等方面有较大的差异;文件数量多,通过手工依次对每个pc文件改造不仅耗时,而且工作量大,现有技术方案中,暂时没有通用的转换方式。


技术实现思路

1、本专利技术实施例的目的是提供一种通用的代码转换方法,用于对内嵌数据库操作语句的代码文件的改造。

2、为了实现上述目的,本专利技术实施例第一方面提供一种代码转换方法,所述代码转换方法包括:获取第一文件及该文件的配置信息,所述第一文件包括内嵌第一类型数据库操作语句的代码文件;以及基于所述配置信息,调用预设的转换组件,将所获取的第一文件转换成第二文件,所述第二文件包括内嵌第二类型数据库操作语句的代码文件,所述第一文件和所述第二文件的代码类型相同,所述预设的转换组件包括转换函数,所述转换函数用于将所述第一类型数据库操作语句转换为对应的所述第二类型数据库操作语句。

3、可选的,所述第一文件和所述第二文件为c、cobol、ada、pascal、pl/i中的语言代码文件。

4、可选的,所述配置信息包括所述第一文件内嵌的数据库操作语句对应的数据库名、表名、表结构、数据库操作类型和对应的操作字段集。

5、可选的,所述预设的转换组件被配置为:根据所述配置信息,生成所述第二文件的头文件和业务接口;以及解析所述第一文件,得到所述第一文件的流程和代码块,对应生成所述第二文件的流程和代码块,在所述代码块中,通过所述转换函数将所述第一类型数据库操作语句转换为对应的所述第二类型数据库操作语句。

6、可选的,所述转换函数被配置为:在生成每个代码块时,根据所述配置信息中的数据库驱动类型,确定所述第二文件内嵌的数据库操作语句是第二类型数据库操作语句;根据该代码块中第一类型数据库操作语句的数据库操作类型,调用对应的模板代码,生成对应的第二类型数据库操作初始语句;以及根据该代码块中第一类型数据库操作语句的参数信息,填充所述第二类型数据库操作初始语句的参数,得到转换的所述第二类型数据库操作语句。

7、本专利技术实施例第二方面提供一种代码转换装置,所述代码转换装置包括:获取模块,用于获取第一文件及该文件的配置信息,所述第一文件包括内嵌第一类型数据库操作语句的代码文件;以及转换模块,用于基于所述配置信息,调用预设的转换组件,将所获取的第一文件转换成第二文件,所述第二文件包括内嵌第二类型数据库操作语句的代码文件,所述第一文件和所述第二文件的代码类型相同,所述预设的转换组件包括转换函数,所述转换函数用于将所述第一类型数据库操作语句转换为对应的所述第二类型数据库操作语句。

8、可选的,所述第一文件和所述第二文件为c、cobol、ada、pascal、pl/i中的语言代码文件。

9、可选的,所述配置信息包括所述第一文件内嵌的数据库操作语句对应的数据库名、表名、表结构、数据库操作类型和对应的操作字段集。

10、可选的,所述预设的转换组件被配置为:根据所述配置信息,生成所述第二文件的头文件和业务接口;以及解析所述第一文件,得到所述第一文件的流程和代码块,对应生成所述第二文件的流程和代码块,在所述代码块中,通过所述转换函数将所述第一类型数据库操作语句转换为对应的所述第二类型数据库操作语句。

11、可选的,所述转换函数被配置为:在生成每个代码块时,根据所述配置信息中的数据库驱动类型,确定所述第二文件内嵌的数据库操作语句是第二类型数据库操作语句;根据该代码块中第一类型数据库操作语句的数据库操作类型和关键字段,调用对应的模板代码,生成对应的第二类型数据库操作初始语句;以及根据该代码块中第一类型数据库操作语句的参数信息,填充所述第二类型数据库操作初始语句的参数,得到转换的所述第二类型数据库操作语句。

12、本专利技术实施例第三方面提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现上述的代码转换方法。

13、本专利技术实施例第四方面提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述的代码转换方法。

14、本专利技术实施例第五方面提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的代码转换方法。

15、通过上述技术方案,本专利技术实施例通过预设的转换组件,将内嵌第一类型数据库操作语句的代码文件快速、标准地转换为内嵌第二类型数据库操作语句的代码文件。特别是对于代码量大的业务系统,可以提升代码改造的效率,且可以使转换更准确,不会出现漏字段的情况等。还可以使改造后的文件保持代码的风格统一。

16、本专利技术实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。

本文档来自技高网...

【技术保护点】

1.一种代码转换方法,其特征在于,所述代码转换方法包括:

2.根据权利要求1所述的代码转换方法,其特征在于,所述第一文件和所述第二文件为C、COBOL、Ada、Pascal、PL/I中的语言代码文件。

3.根据权利要求1所述的代码转换方法,其特征在于,所述配置信息包括所述第一文件内嵌的数据库操作语句对应的数据库名、表名、表结构、数据库操作类型和对应的操作字段集。

4.根据权利要求1所述的代码转换方法,其特征在于,所述预设的转换组件被配置为:

5.根据权利要求4所述的代码转换方法,其特征在于,所述转换函数被配置为:

6.一种代码转换装置,其特征在于,所述代码转换装置包括:

7.根据权利要求6所述的代码转换装置,其特征在于,所述第一文件和所述第二文件为C、COBOL、Ada、Pascal、PL/I中的语言代码文件。

8.根据权利要求6所述的代码转换装置,其特征在于,所述配置信息包括所述第一文件内嵌的数据库操作语句对应的数据库名、表名、表结构、数据库操作类型和对应的操作字段集。

9.根据权利要求6所述的代码转换装置,其特征在于,所述预设的转换组件被配置为:

10.根据权利要求9所述的代码转换装置,其特征在于,所述转换函数被配置为:

11.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;

12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现权利要求1-5中任一项所述的代码转换方法。

13.一种计算机程序产品,其特征在于,包括计算机程序,该计算机程序被处理器执行时实现权利要求1-5中任一项所述的代码转换方法。

...

【技术特征摘要】

1.一种代码转换方法,其特征在于,所述代码转换方法包括:

2.根据权利要求1所述的代码转换方法,其特征在于,所述第一文件和所述第二文件为c、cobol、ada、pascal、pl/i中的语言代码文件。

3.根据权利要求1所述的代码转换方法,其特征在于,所述配置信息包括所述第一文件内嵌的数据库操作语句对应的数据库名、表名、表结构、数据库操作类型和对应的操作字段集。

4.根据权利要求1所述的代码转换方法,其特征在于,所述预设的转换组件被配置为:

5.根据权利要求4所述的代码转换方法,其特征在于,所述转换函数被配置为:

6.一种代码转换装置,其特征在于,所述代码转换装置包括:

7.根据权利要求6所述的代码转换装置,其特征在于,所述第一文件和所述第二文件为c、cobol、ada、pascal、pl/i中的语言代...

【专利技术属性】
技术研发人员:邹家蒙钟凯颖温显法陶欣刘昔科杨喆封富洋
申请(专利权)人:建信金融科技有限责任公司
类型:发明
国别省市:

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

1