本公开涉及数据处理,特别地涉及一种字段构建式的语法校验方法、设备及存储介质。
背景技术:
1、数据分析平台的种类多样,功能繁多,用户可以通过不同的数据分析平台实现数据源的解析、数据的重构以及其他多种操作。在数据源的使用过程中,时常会出现现有的数据不能满足用户实际需求的情况,此时可以基于用户需求生成新字段。例如,用户想要查看剩余工时数据,而现有数据源中只有总工时和已用工时,则可以通过总工时和已用工时计算剩余工时数据,生成新字段供用户使用。然而在实际应用中,用户的需求可能存在不满足字段语法要求的情况,数据库容易出现异常,影响正常使用。
技术实现思路
1、本公开提供一种字段构建式的语法校验方法、设备及存储介质,以在数据库外对字段构建式进行语法校验,避免不满足要求的字段构建式直接输入数据库影响正常运行。
2、第一方面,本公开提供了一种字段构建式的语法校验方法,包括:
3、获取针对数据库的字段构建式,基于预设的语法校验规则对所述字段构建式进行语法校验;
4、将通过所述语法校验的字段构建式发送至所述数据库进行字段构建。
5、在一些实施例中,所述获取针对数据库的字段构建式,包括:
6、获取所述数据库的现有字段信息并显示;
7、接收用户基于所述现有字段信息输入的字段构建式;所述字段构建式包括所述数据库中现有字段的运算关系。
8、在一些实施例中,在所述基于预设的语法校验规则对所述字段构建式进行语法校验之前,所述方法还包括:
9、基于预设的预处理规则对所述字段构建式进行预处理;
10、所述预处理包括函数-函数关系替换处理、字段-数字区分标志处理、字段-类型-字符串关系替换中的至少一种;
11、所述函数-函数关系替换处理用于将所述字段构建式中的函数替换为指定格式,所述指定格式包括math.floor格式;
12、所述字段-数字区分标志处理用于将数字命名的字段进行替换;
13、所述字段-类型-字符串关系替换用于替换所述字段构建式中的指标字段和记录数字段。
14、在一些实施例中,在所述基于预设的语法校验规则对所述字段构建式进行语法校验之前,所述方法还包括:
15、基于预设的预校验规则对所述字段构建式进行预校验;
16、当所述字段构建式未通过所述预校验,则基于所述预校验的结果生成相应的提示信息;
17、所述预校验包括首字校验、聚合-非聚合混用校验、非法符校验中的至少一种;
18、所述首字校验用于判断所述字段构建式的首字是否为正负号;
19、所述聚合-非聚合混用校验用于判断所述字段构建式中是否同时存在使用聚合函数和未使用聚合函数的数据;
20、所述非法符校验用于判断所述字段构建式中是否包括预设的非法符。
21、在一些实施例中,所述基于预设的语法校验规则对所述字段构建式进行语法校验,包括:
22、基于eval函数对所述字段构建式进行语法校验;
23、当所述字段构建式未通过基于所述eval函数的语法校验,则基于语法校验的结果生成相应的提示信息。
24、在一些实施例中,所述基于预设的语法校验规则对所述字段构建式进行语法校验之后,所述方法还包括:
25、基于预设的后校验规则对所述字段构建式进行后校验;
26、当所述字段构建式未公告所述后校验,则基于后校验的结果生成相应的提示信息;
27、所述后校验包括isnan校验、聚合-非聚合混用校验、聚合嵌套校验、特殊符校验、中文符校验中的至少一种;
28、所述isnan校验用于校验所述字段构建式是否为无意义构建式;
29、所述聚合-非聚合混用校验用于校验所述字段构建式中是否同时存在使用聚合函数和未使用聚合函数的数据;
30、所述聚合嵌套校验用于校验聚合函数是否嵌套聚合值;
31、所述特殊符校验用于判断所述字段构建式中是否包括预设的特殊符;
32、所述中文符校验用于通过正则表达式对所述字段构建式进行中文字符校验。
33、在一些实施例中,所述提示信息包括异常位置、异常事项以及修改建议中的至少一种信息。
34、第二方面,本公开提供了一种字段构建式的语法校验装置,包括:
35、构建式校验模块,用于获取针对数据库的字段构建式,基于预设的语法校验规则对所述字段构建式进行语法校验;
36、构建式发送模块,用于将通过所述语法校验的字段构建式发送至所述数据库进行字段构建。
37、第三方面,本公开提供了一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现上述方面所述方法的步骤。
38、第四方面,本公开提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方面所述方法的步骤。
39、第五方面,本公开提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序被处理器执行时实现上述方面所述方法的步骤。
40、本公开提供的一种字段构建式的语法校验方法、装置、设备及存储介质,所述方法包括获取针对数据库的字段构建式,基于预设的语法校验规则对所述字段构建式进行语法校验;将通过所述语法校验的字段构建式发送至所述数据库进行字段构建。本发明实施例提供的方法在数据库执行具体的字段构建前进行字段构建式的语法合法性校验,能够避免频繁执行错误构建式导致的数据库报错,同时避免数据库报错给用户带来的理解和处理困难的问题。本申请在数据库之外提前进行数据校验,并对错误原因进行归类,可以有效增强报错的可读性,便于用户迅速定位错误位置进行处理,提高用户的数据处理效率,改善用户使用体验。
1.一种字段构建式的语法校验方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述获取针对数据库的字段构建式,包括:
3.根据权利要求1所述的方法,其特征在于,在所述基于预设的语法校验规则对所述字段构建式进行语法校验之前,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,在所述基于预设的语法校验规则对所述字段构建式进行语法校验之前,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述基于预设的语法校验规则对所述字段构建式进行语法校验,包括:
6.根据权利要求1所述的方法,其特征在于,在所述基于预设的语法校验规则对所述字段构建式进行语法校验之后,所述方法还包括:
7.根据权利要求4至6中任一项所述的方法,其特征在于:
8.一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1至7中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述方法的步骤。