一种信息生成方法、装置、设备和存储介质制造方法及图纸

技术编号:34257389 阅读:37 留言:0更新日期:2022-07-24 13:01
本申请实施例公开了一种信息生成方法,方法包括:确定待分析数据库;获取针对所述待分析数据库生成结构化查询语言SQL语句的配置参数;其中,所述配置参数至少用于指示所述待分析数据库的数据表中列对象的出现概率以及所需的目标数据模型;基于所述配置参数和所述待分析数据库,生成所述目标SQL语句。本申请实施例同时还公开了一种信息生成装置、设备和存储介质。介质。介质。

An information generation method, device, device and storage medium

【技术实现步骤摘要】
一种信息生成方法、装置、设备和存储介质


[0001]本申请涉及数据处理
,尤其涉及一种信息生成方法、装置、设备和存储介质。

技术介绍

[0002]随着互联网技术的飞速发展,互联网应用得到了广泛的应用,随之而来产生了大量的互联网数据产品。在互联网大数据产品中通常需要使用大批量的结构化查询语言(Structured Query Language,SQL)进行测试,例如SQL解析测试、数据库压力测试、数据模型自动建模等。目前,常用的自动生成SQL语句的SQL自动生成器有SQL测试套件(SQL Test Suite)或Excel等。
[0003]但是,在数据仓库建模场景下需要事先构建大量不同数据模型连接结构的 SQL进行测试,而上述常用的自动SQL语句的SQL自动生成器在生成大量SQL 语句时,需要用户手输入查询的数据例如表名列名等,且不能控制每一SQL表连接模式,导致生成的SQL语句准确性较低,使当前的SQL语句自动生成器的智能程度较差。

技术实现思路

[0004]有鉴于此,本申请实施例期望提供一种信息生成方法、装置、设备和存储介质,解决了目前SQL语句自动生成器的智能化程度较差的问题,提出了一种 SQL语句生成方法,保证了生成的SQL语句的准确性。
[0005]为达到上述目的,本申请的技术方案是这样实现的:
[0006]第一方面,一种信息生成方法,所述方法包括:
[0007]确定待分析数据库;
[0008]获取针对所述待分析数据库生成结构化查询语言SQL语句的配置参数;其中,所述配置参数至少用于指示所述待分析数据库的数据表中列对象的出现概率以及所需的目标数据模型;
[0009]基于所述配置参数和所述待分析数据库,生成所述目标SQL语句。
[0010]可选的,所述配置参数至少包括以下参数之一:所述目标数据模型、表连接参数。
[0011]可选的,所述配置参数包括目标数据模型和表连接参数时,所述基于所述配置参数和所述待分析数据库,生成目标SQL语句,包括:
[0012]确定所述待分析数据库中包括的m个数据表的第一数据表标识信息,得到 m个第一数据表标识信息;其中,m为大于或等于1的正整数;
[0013]从m个所述第一数据表标识信息中,选取符合所述目标数据模型的数据表标识信息,得到n个第二数据表标识信息;其中,n为大于或等于1的正整数;
[0014]基于n个所述第二数据表标识信息和所述表连接参数,生成所述目标SQL 语句。
[0015]可选的,所述基于n个所述第二数据表标识信息和所述表连接参数,生成所述目标SQL语句,包括:
[0016]确定n个所述第二数据表标识信息对应的目标数据表中每一所述目标数据表包括的p个数据列的列对象标识信息,得到n组p个列对象标识信息;其中, p为大于或等于1的正整数;
[0017]基于n个所述第二数据表标识信息和n组p个列对象标识信息,按照所述表连接参数,生成所述目标SQL语句。
[0018]可选的,所述基于n个所述第二数据表标识信息和n组p个列对象标识信息,按照所述表连接参数,生成所述目标SQL语句,包括:
[0019]基于所述表连接参数,确定每一所述第二数据表标识信息的第一出现概率;
[0020]按照每一所述第二数据表标识信息的第一出现概率,从n个所述第二数据表标识信息中随机抽取第一预设数量个数据表标识信息,得到所述第一预设数量个目标数据表标识信息;其中,所述第一预设数量属于所述表连接参数;
[0021]基于所述表连接参数中预先设置的表连接方式和所述目标数据表标识信息,生成至少一条第一表连接子SQL语句;
[0022]基于所述表连接参数,确定每一所述目标数据表标识信息中对应的每一列对象标识信息的第二出现概率;
[0023]按照每一所述目标数据表标识信息中对应的每一列对象标识信息的第二出现概率,从所述第一预设数量个目标数据表标识信息对应的列对象标识信息中,随机抽取第二预设数量个列对象标识信息;其中,所述第二预设数量属于所述表连接参数;
[0024]基于所述表连接参数中包括的目标操作关键字和所述第二预设数量个列对象标识信息,生成至少一条第二表连接子SQL语句;
[0025]组合至少一条所述第一表连接子SQL语句和至少一条所述第二表连接子 SQL语句,得到所述目标SQL语句。
[0026]可选的,所述基于所述表连接参数中预先设置的表连接方式和所述目标数据表标识信息,生成至少一条第一表连接子SQL语句之前,所述方法还包括:
[0027]基于所述表连接参数,确定预设SQL语句;
[0028]解析所述预设SQL语句,确定所述表连接方式、所述第一预设数量、所述第二预设数量和所述目标操作关键字。
[0029]可选的,所述基于所述表连接参数,确定每一所述第二数据表标识信息的第一出现概率,包括:
[0030]确定所述表连接参数中针对每一所述第二数据表标识信息设置的第一权重系数;
[0031]通过所述表连接参数中设置的第一概率模型对每一所述第一权重系数进行计算分析,确定每一所述第二数据表标识信息的第一出现概率;
[0032]对应的,所述基于所述表连接参数,确定每一所述目标数据表标识信息中对应的每一列对象标识信息的第二出现概率,包括:
[0033]确定所述表连接参数中针对每一所述目标数据表标识信息对应的每一列对象标识信息设置的第二权重系数;
[0034]通过所述表连接参数中设置的第二概率模型对每一所述第二权重系数进行计算分析,确定每一所述目标数据表标识信息的所述第二出现概率。
[0035]第二方面,一种信息生成装置,该装置包括:确定单元、获取单元和生成单元;其
中:
[0036]所述确定单元,用于确定待分析数据库;
[0037]所述获取单元,用于获取针对所述待分析数据库生成结构化查询语言SQL 语句的配置参数;其中,所述配置参数至少用于指示所述待分析数据库的数据表中列对象的出现概率以及所需的目标数据模型;
[0038]所述生成单元,用于基于所述配置参数和所述待分析数据库,生成目标SQL 语句。
[0039]第三方面,一种信息生成设备,所述设备包括:存储器、处理器和通信总线;其中:
[0040]所述存储器,用于存储可执行指令;
[0041]所述通信总线,用于实现所述处理器和所述存储器之间的通信连接;
[0042]所述处理器,用于执行所述存储器中存储的信息生成程序,实现如上述任一项所述的信息生成方法的步骤。
[0043]第四方面,一种存储介质,所述存储介质上存储有信息生成程序,所述信息生成程序被处理器执行时实现如上述任一项所述的信息生成方法的步骤。
[0044]本申请的实施例所提供的信息生成方法、装置、设备和存储介质,通过确定待分析数据库后,获取针对待分析数据库生成SQL语句的配置参数,以基于配置参数和本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种信息生成方法,其特征在于,所述方法包括:确定待分析数据库;获取针对所述待分析数据库生成结构化查询语言SQL语句的配置参数;其中,所述配置参数至少用于指示所述待分析数据库的数据表中列对象的出现概率以及所需的目标数据模型;基于所述配置参数和所述待分析数据库,生成所述目标SQL语句。2.根据权利要求1所述的方法,其特征在于,所述配置参数至少包括以下参数之一:所述目标数据模型、表连接参数。3.根据权利要求2所述的方法,其特征在于,所述配置参数包括目标数据模型和表连接参数时,所述基于所述配置参数和所述待分析数据库,生成目标SQL语句,包括:确定所述待分析数据库中包括的m个数据表的第一数据表标识信息,得到m个第一数据表标识信息;其中,m为大于或等于1的正整数;从m个所述第一数据表标识信息中,选取符合所述目标数据模型的数据表标识信息,得到n个第二数据表标识信息;其中,n为大于或等于1的正整数;基于n个所述第二数据表标识信息和所述表连接参数,生成所述目标SQL语句。4.根据权利要求3所述的方法,其特征在于,所述基于n个所述第二数据表标识信息和所述表连接参数,生成所述目标SQL语句,包括:确定n个所述第二数据表标识信息对应的目标数据表中每一所述目标数据表包括的p个数据列的列对象标识信息,得到n组p个列对象标识信息;其中,p为大于或等于1的正整数;基于n个所述第二数据表标识信息和n组p个列对象标识信息,按照所述表连接参数,生成所述目标SQL语句。5.根据权利要求4所述的方法,其特征在于,所述基于n个所述第二数据表标识信息和n组p个列对象标识信息,按照所述表连接参数,生成所述目标SQL语句,包括:基于所述表连接参数,确定每一所述第二数据表标识信息的第一出现概率;按照每一所述第二数据表标识信息的第一出现概率,从n个所述第二数据表标识信息中随机抽取第一预设数量个数据表标识信息,得到所述第一预设数量个目标数据表标识信息;其中,所述第一预设数量属于所述表连接参数;基于所述表连接参数中预先设置的表连接方式和所述目标数据表标识信息,生成至少一条第一表连接子SQL语句;基于所述表连接参数,确定每一所述目标数据表标识信息中对应的每一列对象标识信息的第二出现概率;按照每一所述目标数据表标识信息中对应的每一列对象标识信息的第二出现概率,从所述第一预设数量个目标数据表标识信息对应的列对象标识信息中,随机抽取第二预设数量个列对象标识...

【专利技术属性】
技术研发人员:姜婧妍张雪岩黄杰位凯志古亮
申请(专利权)人:深信服科技股份有限公司
类型:发明
国别省市:

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

1