【技术实现步骤摘要】
一种基于列和访问语句关系的规则校验方法和系统
[0001]本申请涉及到数据处理领域,具体而言,涉及一种基于列和访问语句关系的规则校验方法和系统。
技术介绍
[0002]在SQL语句中,可以为表名称及字段(列)名称指定别名(Alias),别名是SQL标准语法,几乎所有的数据库系统都支持。在编写SQL语句时有的地方使用到AS关键字为查询结果中的某一列指定一个特定的名字。在内连接查询时,则对相同的表分别指定两个不同的名字,在这里可以为字段或者表取一个别名,起到区分、标识和简化的作用。下面针对表和字段使用别名分别进行举例说明。
[0003]例1,为表取别名,当表的名字很长或者执行一些特殊的查询时,为了方便操作或者需要多次使用相同的表时,可以为表指定别名,用这个别名替代表原来的名称。
[0004]语法格式:表名AS表别名。其中,"表名"为数据库中存储的数据表的名称,"表别名"为查询时指定的表的新名称。
[0005]例2,为字段取别名。在进行数据库查询时,可能会查出两个比较相似的字段,如查询出来的两个s_id,字 ...
【技术保护点】
【技术特征摘要】
1.一种基于列和访问语句关系的规则校验方法,其特征在于,包括:接收用于访问数据库的访问语句,其中,所述访问语句用于请求对所述数据库中保存的数据进行操作;判断所述访问语句中是否使用了别名,其中,所述别名包括以下至少之一:表的别名、字段的别名、*,其中,所述*表示全部列;在所述访问语句中包括所述别名的情况下,从预先生成的别名和真实名称的对应关系中查询所述别名对应的真实名称;根据所述真实名称确定所述真实名称对应的表和/或字段中对应的数据是否需要进行控制;在需要进行控制的情况下,对所述真实名称对应的表和/或字段中对应的数据进行控制处理之后,将进行控制处理之后的数据返回所述访问语句的发送方。2.根据权利要求1所述的方法,其特征在于,根据所述真实名称确定所述真实名称对应的表和/或字段中对应的数据是否需要进行控制包括:将所述真实名称替换掉所述访问语句中对应的别名;获取使用所述真实名称替换所述别名后的访问语句所要操作的数据以及所要进行的操作;根据所述访问语句所要操作的数据以及所要进行的操作判断是否需要对所述表和/或字段中对应的数据进行控制。3.根据权利要求2所述的方法,其特征在于,将所述真实名称替换掉所述访问语句中对应的别名包括:根据SQL语句的语法结构对所述访问语句进行解析,在所述访问语句包括子语句嵌套的情况下,按照所述子语句和所述访问语句之间的逻辑关系,将所述访问语句中的所有子语句构造成预定的结构;使用所述真实名称替换掉所述预定的结构中的别名。4.根据权利要求3所述的方法,其特征在于,使用所述真实名称替换掉所述预定的结构中的别名包括:在所述预定的结构为树状结构的情况下,按照所述树状结构的最下层的叶子节点到所述数据状结构的根节点的顺序,逐层使用真实名称替换该层中的语句中的别名。5.一种基于列和访问语句关系的规则校验系统,其特征在于,包括:接收模块,用于接收用于访问数据库的访问语句,其中,所述访问语句用于...
【专利技术属性】
技术研发人员:潘云,岳丹,
申请(专利权)人:北京安华金和科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。