一种新型动态生成数据操作命令的解析平台及设计方法与流程

文档序号:15932091发布日期:2018-11-14 01:48阅读:200来源:国知局

本发明属于计算机信息处理技术领域,特别涉及一种新型动态生成数据操作命令的解析平台及设计方法。

背景技术

随着计算机信息技术的发展,所使用的软件系统规模也越来越大。在办公系统、管理类型系统与信息发布系统、电子商务系统等领域都涉及到数据库系统,软件系统涉及的数据大多存放在数据库中。

在以上类型的软件系统开发过程中,需要对每个数据表开发与之对应的数据存取、解析功能。在实际应用中,由于数据输入源与呈现方式的不同,往往存在一个数据表对应一个或多个数据模型。在更新数据库对应的数据表时,需要针对性编写增加、修改、删除数据的sql命令代码。在此过程中,对数据模型中各成员的数据类型、数据长度(大小)、各字段在数据表中的作用(主键、自增类型列、唯一键)进行处理。在软件系统较大数据表比较多时,与之对应的sql命令代码也将成比例增加。在业务模块较多,数据表数量大时,工作量非常大,会占用大量的项目开发周期。

在团队合作的项目中,由于开发人员的技术实力与编程风格的差异,会导致软件系统开发过程中质量控制难度大,程序的规范性、健壮性、可维护性也将随着系统规模的增加而不断的提高难度,软件系统的稳定性与数据处理严谨性、正确性难以控制,且占用非常大比例的开发时间,增加软件的测试成本与维护时间,软件项目开发与维护成本非常高。



技术实现要素:

本发明针对现有技术中存在的技术问题,提供一种新型动态生成数据操作命令的解析平台及设计方法,可达到兼容性高、稳定性高、可大幅缩短信息化软件项目开发过程中数据库操作开发周期,并显著提升代码规范的有益效果。

为解决上述技术问题,本发明采用的技术方案是:一种新型动态生成数据操作命令的解析平台,包括数据模型解析模块、数据模型成员数据规范检查模块、sql命令生成模块和业务调用模块,

所述业务调用模块的输出端与数据模型解析模块的输入端连接,所述数据模型解析模块的输出端与数据模型成员数据规范检查模块的输入端连接,所述数据模型成员数据规范检查模块的输出端与sql命令生成模块的输入端连接,所述sql命令生成模块的输出端与业务调用模块的输入端连接。

作为优选,所述数据模型解析模块,用于解析数据模型所对应的数据表信息、字段信息,并解析各个成员属性所对应数据表字段的约束与取值范围。

作为优选,所述数据模型成员数据规范检查模块,用于解析数据模型与数据表对应字段值的合规性。

作为优选,所述sql命令生成模块,用于将解析完成且数据符合数据模型定义规范的模型数据翻译为sql命令,并将命令返回到业务调用模块。

一种新型动态生成数据操作命令的设计方法,包括以下步骤,

(1)解析平台接收到模型解析请求后,判断数据模型是否具有数据表标识属性,如果没数据表标识属性则结束解析工作,返回结束解析原因并退出解析平台;有则进行下一步骤;

(2)解析数据模型的数据标识属性中数据表名称与所有者;

(3)进行数据模型成员属性遍历,当成员属性无字段标识属性时跳过解析,继续检查下一个成员属性;当成员属性具有字段标识属性时,进行下一步骤;

(4)检查字段标识属性中的子属性字段名、数据类型等各种数据类型、格式与约束的描述信息;

(5)使用步骤(4)中取得的约束信息对数据模型成员属性值进行验证,当验证结果符合成员属性定义的约束规则时,继续下一成员属性的解析,否则结束解析工作,返回结束解析原因并退出解析平台;当数据模型所有成员属性均检查过后,且所有成员属性中至少有一个成员属性具有字段标识属性,进行下一步骤;

(6)根据数据模型数据表标识与各具有字段标识的成员属性与成员属性值生成sql命令,返回生成的sql命令并退出数据模型解析平台,否则结束解析工作,返回结束解析原因并退出解析平台。

作为优选,在建立数据模型时,在模型类上标识“数据表”属性,设置表名与所有者信息;在数据模型中与数据表对应的成员属性上设置“字段标识”属性,根据实际情况设置“字段标识”属性子属性字段;子属性范围用于反映出与之对应的数据表字段的特性与约束;“数据表”属性与“字段标识”属性用于数据模型解析平台解析与处理。

作为优选,解析平台根据数据模型的“数据表”标识生成模型对应的数据库表所有者及名称,根据数据模型成员的“字段标识”中的字段名称、是否自增列属性生成相应的sql更新字段,通过数据模型的属性字段数据类型、属性值生成更新值,并根据“字段标识”的最大长度与是否允许为空进行规范性约束;根据“字段标识”标识中是否为自增列、是否唯一键、是否主键来确定生成的sql命令代码的约束条件。

与现有技术相比,本发明所具有的有益效果是:通过本发明的开发方法建立数据模型,经过本发明的数据模型解析平台进行实体数据模型解析产生sql命令,无需对数据操作层单独进行编码,或只需少量编码,特别是对于大型软件系统可极大的减少代码量,提高开发效率;使用此方法的数据库更新所需sql语句均为动态生成,所以并最大限度的规范了sql命令代码格式,有效降低了因书写风格不同而造成的维护困难问题,提高了代码的友好性与简洁性;同时由于sql命令产生于数据模型解析平台,维护与扩展方面也具有很大优势。

附图说明

图1为本发明的数据模型描述图;

图2为本发明的解析平台工作流程图;

图3为本发明的解析平台模块结构图。

具体实施方式

为使本领域技术人员更好的理解本发明的技术方案,下面结合附图和具体实施例对本发明作详细说明。

本发明的实施例公开了一种通过数据模型进行数据操作的平台及方法,如图所示,

一种新型动态生成数据操作命令的解析平台,包括数据模型解析模块、数据模型成员数据规范检查模块、sql命令生成模块和业务调用模块,

业务调用模块的输出端与数据模型解析模块的输入端连接,数据模型解析模块的输出端与数据模型成员数据规范检查模块的输入端连接,数据模型成员数据规范检查模块的输出端与sql命令生成模块的输入端连接,sql命令生成模块的输出端与业务调用模块的输入端连接。

在本实施例中,数据模型解析模块,用于解析数据模型所对应的数据表信息、字段信息,并解析各个成员属性所对应数据表字段的约束与取值范围。

在本实施例中,数据模型成员数据规范检查模块,用于解析数据模型与数据表对应字段值的合规性。

在本实施例中,sql命令生成模块,用于将解析完成且数据符合数据模型定义规范的模型数据翻译为sql命令,并将命令返回到业务调用模块。

一种新型动态生成数据操作命令的设计方法,包括以下步骤,

(1)解析平台接收到模型解析请求后,判断数据模型是否具有数据表标识属性,如果没数据表标识属性则结束解析工作,返回结束解析原因并退出解析平台;有则进行下一步骤;

(2)解析数据模型的数据标识属性中数据表名称与所有者;

(3)进行数据模型成员属性遍历,当成员属性无字段标识属性时跳过解析,继续检查下一个成员属性;当成员属性具有字段标识属性时,进行下一步骤;

(4)检查字段标识属性中的子属性字段名、数据类型等各种数据类型、格式与约束的描述信息;

(5)使用步骤(4)中取得的约束信息对数据模型成员属性值进行验证,当验证结果符合成员属性定义的约束规则时,继续下一成员属性的解析,否则结束解析工作,返回结束解析原因并退出解析平台;当数据模型所有成员属性均检查过后,且所有成员属性中至少有一个成员属性具有字段标识属性,进行下一步骤;

(6)根据数据模型数据表标识与各具有字段标识的成员属性与成员属性值生成sql命令,返回生成的sql命令并退出数据模型解析平台,否则结束解析工作,返回结束解析原因并退出解析平台。

在本实施例中,在建立数据模型时,在模型类上标识“数据表”属性,设置表名与所有者信息;在数据模型中与数据表对应的成员属性上设置“字段标识”属性,根据实际情况设置“字段标识”属性子属性字段;子属性范围用于反映出与之对应的数据表字段的特性与约束;“数据表”属性与“字段标识”属性用于数据模型解析平台解析与处理。

在本实施例中,解析平台根据数据模型的“数据表”标识生成模型对应的数据库表所有者及名称,根据数据模型成员的“字段标识”中的字段名称、是否自增列属性生成相应的sql更新字段,通过数据模型的属性字段数据类型、属性值生成更新值,并根据“字段标识”的最大长度与是否允许为空进行规范性约束;根据“字段标识”标识中是否为自增列、是否唯一键、是否主键来确定生成的sql命令代码的约束条件。

以上通过实施例对本发明进行了详细说明,但所述内容仅为本发明的示例性实施例,不能被认为用于限定本发明的实施范围。本发明的保护范围由权利要求书限定。凡利用本发明所述的技术方案,或本领域的技术人员在本发明技术方案的启发下,在本发明的实质和保护范围内,设计出类似的技术方案而达到上述技术效果的,或者对申请范围所作的均等变化与改进等,均应仍归属于本发明的专利涵盖保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1