一种数据库语句检查方法和装置制造方法及图纸

技术编号:17561679 阅读:47 留言:0更新日期:2018-03-28 12:13
本申请提供一种数据库语句检查方法和装置,方法通过在获取到目标数据库脚本后,依据预存储的数据库脚本检查规则对所述目标数据库脚本进行检查,并输出检查结果,从而实现了目标数据库脚本的自动检查,提高了数据库检脚本检查效率。

A method and device for checking database statements

This application provides a database statement inspection method and apparatus, through to the target database script in the acquisition, according to the pre stored database script check rules check on the target database scripts, and output results, so as to realize the automatic inspection of the target database script, improve the inspection efficiency check database script.

【技术实现步骤摘要】
一种数据库语句检查方法和装置
本专利技术涉及数据处理
,具体涉及一种数据库语句检查方法和装置。
技术介绍
数据库是系统构建中必不可少的一部分,而随着信息时代的大爆炸,各种信息铺天盖地,信息数量、信息规模都与日俱增,对数据库操作的要求越来越高。在数据库操作语句的开发过程中,一点小瑕疵就可能无限放大,最终导致系统出现严重的问题。在企业级的大型系统的构建中,因规模庞大、参与人员众多、系统迭代频繁、开发人员水平不一,导致数据库操作语句开发过程中难免存在性能、语法等问题,而程序复核依靠人力耗时耗力,检查效率低。因此,如何提高检查数据库语句的效率成为本领域技术人员亟待解决的技术问题之一。
技术实现思路
有鉴于此,本专利技术实施例提供一种数据库语句检查方法和装置,以提高数据库语句的检查效率。为实现上述目的,本专利技术实施例提供如下技术方案:一种数据库语句检查方法,包括:获取待检测的目标数据库的数据库脚本;获取预存储的数据库脚本检查规则;调用与所述数据库脚本相匹配的数据库脚本检查规则对所述数据库脚本进行检查,判断数据库脚本编码是否存在问题,并输出检查结果。优选的,上述数据库语句检查方法中,所述获取待检测的目标数据库的数据库脚本,具体包括:通过输入目录、输入单个脚本文件或输入SQL语句的方式获取用户选择的目标数据库的数据库脚本,或获取用户输入的目录下的一个或多个目标数据库的数据库脚本。优选的,上述数据库语句检查方法中,所述由检查规则存储单元中调用所述数据库脚本相匹配的数据库脚本检查规则对所述数据库脚本进行检查,并输出检查结果,具体包括:获取所述检查规则存储单元中的第一预设规则,依据所述第一预设规则检查获取到的目标数据库的数据库脚本中是否存在回车符,如果是,输出所述数据库脚本包含回车符的语句的具体位置;获取所述检查规则存储单元中的第二预设规则,依据所述第二预设规则检查获取到的目标数据库的数据库脚本中的insert、select、merge是否符合规范,如果否,输出不符合规范的insert、select、merge的具体位置;获取所述检查规则存储单元中的第三预设规则,依据所述第三预设规则检查获取到的目标数据库的数据库脚本中的insert、update、merge插入、修改数据项是否与预设数据库表中的字段定义类型一致,如果不一致,输出所述insert、update、merge插入、修改数据项的具体位置;获取所述检查规则存储单元中的第四预设规则,依据所述第四预设规则检查获取到的目标数据库的数据库脚本中的表外键是否建立索引,如果没有索引,输出表外键的具体位置;获取所述检查规则存储单元中的第五预设规则,依据所述第五预设规则检查获取到的目标数据库的数据库脚本索引执行情况,输出不能有效执行的索引的具体位置;获取所述检查规则存储单元中的第六预设规则,依据所述第六预设规则检查获取到的目标数据库的数据库脚本表执行情况,输出不能有效执行的数据库脚本表的具体位置;获取所述检查规则存储单元中的第七预设规则,依据所述第七预设规则检查获取到的目标数据库的数据库脚本中是否包含有对满足设定条件的大数据表的操作,如果是,输出所述大数据表的位置以及对所述大数据表操作的数据库脚本的具体位置;获取所述检查规则存储单元中的第七预设规则,依据所述第七预设规则检查目标数据库脚本中是否存在未提交的SQL语句,如果是,输出未提交的SQL语句的具体位置。优选的,上述数据库语句检查方法中,在获取到所述目标数据库的数据库脚本之后,依据数据库脚本检查规则对所述数据库脚本进行检查之前,还包括:对所述数据库脚本进行解析,得到SQL语句的各个组成部分的信息。优选的,上述数据库语句检查方法中,输出检查结果之后,还包括:显示所述目标数据库的数据库脚本以及数据检查单元的检查结果。优选的,上述数据库语句检查方法中,所述显示所述目标数据库的数据库脚本以及数据检查单元的检查结果,具体包括:在第一显示栏显示所述目标数据库的数据库脚本,在第二显示栏中采用对所述目标数据库的数据库脚本进行标注的形式显示检查结果,并标注不满足所述数据库脚本检查规则的SQL语句。一种数据库语句检查装置,包括:数据采集单元,用于获取待检测的目标数据库的数据库脚本;检查规则存储单元,用于存储预设的数据库脚本检查规则;数据检查单元,用于获取所述目标数据库的数据库脚本,由检查规则存储单元中调用所述数据库脚本相匹配的数据库脚本检查规则对所述数据库脚本进行检查,判断数据库脚本编码是否存在问题,并输出检查结果。优选的,上述数据库语句检查装置中,所述数据采集单元,具体用于:通过输入目录、输入单个脚本文件或输入SQL语句的方式获取用户选择的目标数据库的数据库脚本,或获取用户输入的目录下的一个或多个目标数据库的数据库脚本。优选的,上述数据库语句检查装置中,所述数据检查单元具体用于:获取所述检查规则存储单元中的第一预设规则,依据所述第一预设规则检查获取到的目标数据库的数据库脚本中是否存在回车符,如果是,输出所述数据库脚本包含回车符的语句的具体位置;获取所述检查规则存储单元中的第二预设规则,依据所述第二预设规则检查获取到的目标数据库的数据库脚本中的insert、select、merge是否符合规范,如果否,输出不符合规范的insert、select、merge的具体位置;获取所述检查规则存储单元中的第三预设规则,依据所述第三预设规则检查获取到的目标数据库的数据库脚本中的insert、update、merge插入、修改数据项是否与预设数据库表中的字段定义类型一致,如果不一致,输出所述insert、update、merge插入、修改数据项的具体位置;获取所述检查规则存储单元中的第四预设规则,依据所述第四预设规则检查获取到的目标数据库的数据库脚本中的表外键是否建立索引,如果没有索引,输出表外键的具体位置;获取所述检查规则存储单元中的第五预设规则,依据所述第五预设规则检查获取到的目标数据库的数据库脚本索引执行情况,输出不能有效执行的索引的具体位置;获取所述检查规则存储单元中的第六预设规则,依据所述第六预设规则检查获取到的目标数据库的数据库脚本表执行情况,输出不能有效执行的数据库脚本表的具体位置;获取所述检查规则存储单元中的第七预设规则,依据所述第七预设规则检查获取到的目标数据库的数据库脚本中是否包含有对满足设定条件的大数据表的操作,如果是,输出所述大数据表的位置以及对所述大数据表操作的数据库脚本的具体位置;获取所述检查规则存储单元中的第七预设规则,依据所述第七预设规则检查目标数据库脚本中是否存在未提交的SQL语句,如果是,输出未提交的SQL语句的具体位置。优选的,上述数据库语句检查装置中,数据检查单元具体在获取到所述目标数据库的数据库脚本之后,依据数据库脚本检查规则对所述数据库脚本进行检查之前,还用于:对所述数据库脚本进行解析,得到SQL语句的各个组成部分的信息。优选的,上述数据库语句检查装置中,还包括:显示单元,用于显示所述目标数据库的数据库脚本以及数据检查单元的检查结果。优选的,上述数据库语句检查装置中,所述显示单元具体用于:在第一显示栏显示所述目标数据库的数据库脚本,在第二显示栏中采用对所述目标数据库的数据库脚本进行标注的形式显示检查结果,并标注本文档来自技高网...
一种数据库语句检查方法和装置

【技术保护点】
一种数据库语句检查方法,其特征在于,包括:获取待检测的目标数据库的数据库脚本;获取预存储的数据库脚本检查规则;调用与所述数据库脚本相匹配的数据库脚本检查规则对所述数据库脚本进行检查,判断数据库脚本编码是否存在问题,并输出检查结果。

【技术特征摘要】
1.一种数据库语句检查方法,其特征在于,包括:获取待检测的目标数据库的数据库脚本;获取预存储的数据库脚本检查规则;调用与所述数据库脚本相匹配的数据库脚本检查规则对所述数据库脚本进行检查,判断数据库脚本编码是否存在问题,并输出检查结果。2.根据权利要求1所述的数据库语句检查方法,其特征在于,所述获取待检测的目标数据库的数据库脚本,具体包括:通过输入目录、输入单个脚本文件或输入SQL语句的方式获取用户选择的目标数据库的数据库脚本,或获取用户输入的目录下的一个或多个目标数据库的数据库脚本。3.根据权利要求1所述的数据库语句检查方法,其特征在于,所述由检查规则存储单元中调用所述数据库脚本相匹配的数据库脚本检查规则对所述数据库脚本进行检查,并输出检查结果,具体包括:获取所述检查规则存储单元中的第一预设规则,依据所述第一预设规则检查获取到的目标数据库的数据库脚本中是否存在回车符,如果是,输出所述数据库脚本包含回车符的语句的具体位置;获取所述检查规则存储单元中的第二预设规则,依据所述第二预设规则检查获取到的目标数据库的数据库脚本中的insert、select、merge是否符合规范,如果否,输出不符合规范的insert、select、merge的具体位置;获取所述检查规则存储单元中的第三预设规则,依据所述第三预设规则检查获取到的目标数据库的数据库脚本中的insert、update、merge插入、修改数据项是否与预设数据库表中的字段定义类型一致,如果不一致,输出所述insert、update、merge插入、修改数据项的具体位置;获取所述检查规则存储单元中的第四预设规则,依据所述第四预设规则检查获取到的目标数据库的数据库脚本中的表外键是否建立索引,如果没有索引,输出表外键的具体位置;获取所述检查规则存储单元中的第五预设规则,依据所述第五预设规则检查获取到的目标数据库的数据库脚本索引执行情况,输出不能有效执行的索引的具体位置;获取所述检查规则存储单元中的第六预设规则,依据所述第六预设规则检查获取到的目标数据库的数据库脚本表执行情况,输出不能有效执行的数据库脚本表的具体位置;获取所述检查规则存储单元中的第七预设规则,依据所述第七预设规则检查获取到的目标数据库的数据库脚本中是否包含有对满足设定条件的大数据表的操作,如果是,输出所述大数据表的位置以及对所述大数据表操作的数据库脚本的具体位置;获取所述检查规则存储单元中的第七预设规则,依据所述第七预设规则检查目标数据库脚本中是否存在未提交的SQL语句,如果是,输出未提交的SQL语句的具体位置。4.根据权利要求1所述的数据库语句检查方法,其特征在于,在获取到所述目标数据库的数据库脚本之后,依据数据库脚本检查规则对所述数据库脚本进行检查之前,还包括:对所述数据库脚本进行解析,得到SQL语句的各个组成部分的信息。5.根据权利要求1所述的数据库语句检查方法,其特征在于,输出检查结果之后,还包括:显示所述目标数据库的数据库脚本以及数据检查单元的检查结果。6.根据权利要求5所述的数据库语句检查方法,其特征在于,所述显示所述目标数据库的数据库脚本以及数据检查单元的检查结果,具体包括:在第一显示栏显示所述目标数据库的数据库脚本,在第二显示栏中采用对所述目标数据库的数据库脚本进行标注的形式显示检查结果,并标注不满足所述数据库脚本检...

【专利技术属性】
技术研发人员:赵亮王倩张晶
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京,11

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

1