System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于脚本开发,具体涉及一种脚本解析方法、装置和电子设备。
技术介绍
1、数据库脚本在开发过程中,一般是利用第三方提供的组件来实现参数的定义和传递。然而,采用这样的方式,无法灵活地配置和修改脚本,每次进行修改后都需要重新进行编译,这无疑会增加脚本开发时间和工作量,其次采用这样的方式也无法实时地运行脚本以检查其可执行情况,这意味着在发现问题后,需要进行一系列的调试和测试才能确定脚本的可靠性,导致数据库脚本的开发效率较低。
2、如此,如何提供一种有效的方案以方便数据库脚本的开发,已成为现有技术中一亟待解决的问题。
技术实现思路
1、本专利技术的目的是提供一种脚本解析方法、装置和电子设备,用以解决现有技术中存在的上述问题。
2、为了实现上述目的,本专利技术采用以下技术方案:
3、第一方面,本专利技术提供了一种脚本解析方法,包括:
4、扫描待解析的数据库脚本中的自定义参数,生成与数据库脚本中各自定义参数一一对应且用于自定义参数修改的输入框;
5、响应于用户对数据库脚本中各自定义参数所对应输入框的参数录入操作,更新数据库脚本中的自定义参数;
6、对更新后的数据库脚本中的if语句进行拆分;
7、依序将更新后的数据库脚本中的非if语句以及条件成立的if语句进行拼接,得到处理后的数据库脚本;
8、加载运行处理后的数据库脚本,以对处理后的数据库脚本进行语法和语义检查;
9、在检查通过后
10、基于上述公开的内容,本专利技术通过扫描待解析的数据库脚本中的自定义参数,生成与数据库脚本中各自定义参数一一对应且用于自定义参数修改的输入框;响应于用户对数据库脚本中各自定义参数所对应输入框的参数录入操作,更新数据库脚本中的自定义参数;对更新后的数据库脚本中的if语句进行拆分;依序将更新后的数据库脚本中的非if语句以及条件成立的if语句进行拼接,得到处理后的数据库脚本;加载运行处理后的数据库脚本,以对处理后的数据库脚本进行语法和语义检查;在检查通过后保存处理后的数据库脚本中的自定义参数和返回结果字段。如此,由于能够扫描待解析的数据库脚本中的自定义参数并生成用于定义参数修改的输入框,从而能够更加灵活和高效的进行脚本配置和修改,并且可对脚本中的if语句进行拆分后将条件成立的if语句拼接并加载运行以对脚本进行语法和语义检查,从而能够能够实时反馈不同条件下拼接的数据库脚本以及检查脚本可执行情况,有助于快速发现和解决脚本潜在的问题,提高数据库脚本开发效率。
11、通过上述的设计,本专利技术能够扫描待解析的数据库脚本中的自定义参数并生成用于定义参数修改的输入框,从而能够更加灵活和高效的进行脚本配置和修改,并且可对脚本中的if语句进行拆分后将条件成立的if语句拼接并加载运行以对脚本进行语法和语义检查,从而能够实时反馈不同条件下拼接的数据库脚本以及检查脚本可执行情况,有助于快速发现和解决脚本潜在的问题,提高数据库脚本开发效率,便于实际应用和推广。
12、在一个可能的设计中,所述加载运行处理后的数据库脚本,包括:
13、通过与用户所选择的数据库引擎所对应的数据库,加载运行处理后的数据库脚本。
14、在一个可能的设计中,在检查通过后,所述方法还包括:
15、记录所述数据库引擎和所述数据库引擎所对应的数据库。
16、在一个可能的设计中,所述扫描待解析的数据库脚本中的自定义参数,包括:
17、遍历待解析的数据库脚本的脚本内容;
18、将待解析的数据库脚本中位于整型符号和数值型符号之后的非系统内置变量作为待解析的数据库脚本中的自定义参数。
19、在一个可能的设计中,更新后的数据库脚本中的非if语句包括更新后的数据库脚本中首个if语句之前的语句、更新后的数据库脚本中最后一个if语句之后的语句以及更新后的数据库脚本中相邻两个if语句之间的语句。
20、在一个可能的设计中,处理后的数据库脚本中的自定义参数和返回结果字段以结构化形式保存。
21、在一个可能的设计中,在对更新后的数据库脚本中的if语句进行拆分之后,所述方法还包括:
22、丢弃更新后的数据库脚本中条件不成立的if语句。
23、第二方面,本专利技术提供了一种脚本解析装置,包括:
24、扫描单元,用于扫描待解析的数据库脚本中的自定义参数;
25、生成单元,用于生成与数据库脚本中各自定义参数一一对应且用于自定义参数修改的输入框;
26、更新单元,用于响应于用户对数据库脚本中各自定义参数所对应输入框的参数录入操作,更新数据库脚本中的自定义参数;
27、拆分单元,用于对更新后的数据库脚本中的if语句进行拆分;
28、拼接单元,用于依序将更新后的数据库脚本中的非if语句以及条件成立的if语句进行拼接,得到处理后的数据库脚本;
29、加载单元,用于加载运行处理后的数据库脚本,以对处理后的数据库脚本进行语法和语义检查;
30、保存单元,用于在检查通过后保存处理后的数据库脚本中的自定义参数和返回结果字段。
31、第三方面,本专利技术提供了一种电子设备,包括依次通信相连的存储器、处理器和收发器,其中,所述存储器用于存储计算机程序,所述收发器用于收发消息,所述处理器用于读取所述计算机程序,执行如上述第一方面或第一方面任一可能设计所述的脚本解析方法。
32、第四方面,本专利技术提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行第一方面或第一方面任一可能设计所述的脚本解析方法。
33、第五方面,本专利技术提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如第一方面或第一方面任一可能设计所述的脚本解析方法。
34、有益效果:
35、本专利技术提供的脚本解析方法、装置和电子设备,能够扫描待解析的数据库脚本中的自定义参数并生成用于定义参数修改的输入框,从而能够更加灵活和高效的进行脚本配置和修改,并且可对脚本中的if语句进行拆分后将条件成立的if语句拼接并加载运行以对脚本进行语法和语义检查,从而能够实时反馈不同条件下拼接的数据库脚本以及检查脚本可执行情况,有助于快速发现和解决脚本潜在的问题,提高数据库脚本开发效率,便于实际应用和推广。
本文档来自技高网...【技术保护点】
1.一种脚本解析方法,其特征在于,包括:
2.根据权利要求1所述的脚本解析方法,其特征在于,所述加载运行处理后的数据库脚本,包括:
3.根据权利要求2所述的脚本解析方法,其特征在于,在检查通过后,所述方法还包括:
4.根据权利要求1所述的脚本解析方法,其特征在于,所述扫描待解析的数据库脚本中的自定义参数,包括:
5.根据权利要求1所述的脚本解析方法,其特征在于,更新后的数据库脚本中的非if语句包括更新后的数据库脚本中首个if语句之前的语句、更新后的数据库脚本中最后一个if语句之后的语句以及更新后的数据库脚本中相邻两个if语句之间的语句。
6.根据权利要求1所述的脚本解析方法,其特征在于,处理后的数据库脚本中的自定义参数和返回结果字段以结构化形式保存。
7.根据权利要求1所述的脚本解析方法,其特征在于,在对更新后的数据库脚本中的if语句进行拆分之后,所述方法还包括:
8.一种脚本解析装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括依次通信相连的存储器、处理器和收发器,其中,所
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行如权利要求1~7任意一项所述的脚本解析方法。
...【技术特征摘要】
1.一种脚本解析方法,其特征在于,包括:
2.根据权利要求1所述的脚本解析方法,其特征在于,所述加载运行处理后的数据库脚本,包括:
3.根据权利要求2所述的脚本解析方法,其特征在于,在检查通过后,所述方法还包括:
4.根据权利要求1所述的脚本解析方法,其特征在于,所述扫描待解析的数据库脚本中的自定义参数,包括:
5.根据权利要求1所述的脚本解析方法,其特征在于,更新后的数据库脚本中的非if语句包括更新后的数据库脚本中首个if语句之前的语句、更新后的数据库脚本中最后一个if语句之后的语句以及更新后的数据库脚本中相邻两个if语句之间的语句。
6.根据权利要求1所述的脚本解析方法,其特征...
【专利技术属性】
技术研发人员:马毅,
申请(专利权)人:中国人寿保险股份有限公司四川省分公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。