本申请提供了一种多表连接视图更新方法、装置、设备、存储介质及产品。方法包括:获取满足更新条件的目标视图对应的目标视图语义数据;若根据目标视图语义数据确定目标视图是嵌套多表连接视图,确定目标更新语句对应的待合并查询树,以及目标视图语义数据对应的视图查询树,目标更新语句用于对目标视图进行更新,待合并查询树包括目标视图对应的视图节点;确定视图查询树的根节点,将根节点链接至视图节点,以获得合并查询树;根据合并查询树对目标视图进行更新。本申请的方法解决了在相关技术中,无法对多表连接视图进行更新的问题。无法对多表连接视图进行更新的问题。无法对多表连接视图进行更新的问题。
【技术实现步骤摘要】
多表连接视图更新方法、装置、设备、存储介质及产品
[0001]本申请涉及数据处理技术,尤其涉及一种多表连接视图更新方法、装置、设备、存储介质及产品。
技术介绍
[0002]在数据处理领域中,关系数据库的应用越来越广泛,在关系型数据库中,视图更新是将视图中的各种操作转换为对视图语义所包含的基本表的操作。
[0003]在相关技术中,在视图包括单个基本表或者单个子视图时,对视图进行更新时,只需将更新的目标对象从视图转换为视图中的单个表或者单个子视图。
[0004]然而,相关技术的方法只能解决包含单个表或者单个视图的目标视图的更新问题,而不能解决多表连接视图的更新问题。即,在相关技术中,存在无法对多表连接视图进行更新的技术问题。
技术实现思路
[0005]本申请实施例提供一种多表连接视图更新方法、装置、设备、存储介质及产品,用以解决现有技术中无法对多表连接视图进行更新的技术问题。
[0006]第一方面,本申请实施例提供一种多表连接视图更新方法,包括:获取满足更新条件的目标视图对应的目标视图语义数据;若根据所述目标视图语义数据确定所述目标视图是嵌套多表连接视图,则确定目标更新语句对应的待合并查询树,以及所述目标视图语义数据对应的视图查询树,所述目标更新语句用于对所述目标视图进行更新,所述待合并查询树包括所述目标视图对应的视图节点;确定所述视图查询树的根节点,将所述根节点链接至所述视图节点,以获得合并查询树;根据所述合并查询树对所述目标视图进行更新。
[0007]可选地,所述获取满足更新条件的目标视图对应的目标视图语义数据,包括:获取目标视图对应的原始语义数据;根据所述原始语义数据确定所述目标视图是否满足更新条件;若确定所述目标视图满足更新条件,则确定所述目标视图对应的原始语义数据为所述目标视图对应的目标视图语义数据。
[0008]可选地,所述根据所述原始语义数据确定所述目标视图是否满足更新条件,包括:判断所述原始语义数据是否满足更新条件;若确定所述原始语义数据满足更新条件,则判断与所述原始语义数据对应的各个目标算子是否均满足更新条件;若确定所述各个目标算子均满足更新条件,则确定所述目标视图满足更新条件。
[0009]可选地,所述判断所述原始语义数据是否满足更新条件,包括:确定所述原始语义数据是否包括预先存储的不满足更新条件的关键词;若确定所述原始语义数据包括不满足更新条件的关键词,则确定所述原始语义数据不满足更新条件;若确定所述原始语义数据不包括不满足更新条件的关键词,则确定所述原始语义数据满足更新条件。
[0010]可选地,判断与所述原始语义数据对应的各个目标算子是否均满足更新条件,包括:将各所述目标算子与预先存储的满足更新条件的算子进行对比;若确定所述满足更新
条件的算子中存在各所述目标算子,则确定各所述目标算子均满足更新条件;若确定所述满足更新条件的算子中不存在任一个所述目标算子,则确定对应的目标算子不满足更新条件。
[0011]可选地,判断与所述原始语义数据对应的各个目标算子是否均满足更新条件,包括:获取原始语义数据对应的原始语义查询树,所述原始语义查询树包括多个节点,所述多个节点包括多个叶子节点以及多个连接节点,所述多个叶子节点分别对应所述原始语义数据中的多个基本表,所述多个连接节点分别对应所述各个目标算子;按照从所述叶子节点连接至所述原始语义查询树根节点的方向,依次判断各节点对应的目标算子是否满足更新条件;若确定所述满足更新条件的算子中存在各所述目标算子,则确定各所述目标算子均满足更新条件;若确定所述满足更新条件的算子中不存在任一个目标算子,则确定对应的目标算子不满足更新条件。
[0012]可选地,在判断所述原始语义数据是否满足更新条件之后,还包括:若确定所述原始语义数据满足更新条件,则对所述原始语义数据进行逻辑优化,以获得初始语义数据;确定所述初始语义数据对应的各个算子为所述原始语义数据对应的各个目标算子。
[0013]可选地,所述对所述原始语义数据进行逻辑优化,获取所述初始语义数据,包括:对所述原始语义数据进行外连接消除,和/或子查询提升,获取所述初始语义数据。
[0014]可选地,若根据所述目标视图语义数据确定所述目标视图不是嵌套多表连接视图,所述方法还包括:确定所述目标更新语句中包括的多个基本表;对所述多个基本表进行合并处理,获得合并基本表;根据所述合并基本表对所述目标视图进行更新。
[0015]第二方面,本申请实施例提供一种多表连接视图更新装置,所述装置包括:获取模块,用于获取满足更新条件的目标视图对应的目标视图语义数据;第一确定模块,用于若根据所述目标视图语义数据确定所述目标视图是嵌套多表连接视图,则确定目标更新语句对应的待合并查询树,以及所述目标视图语义数据对应的视图查询树,所述目标更新语句用于对所述目标视图进行更新,所述待合并查询树包括所述目标视图对应的视图节点;第二确定模块,用于确定所述视图查询树的根节点,将所述根节点链接至所述视图节点,以获得合并查询树;第一更新模块,用于根据所述合并查询树对所述目标视图进行更新。
[0016]第三方面,本申请实施例提供一种电子设备,包括:处理器、与所述处理器通信连接的存储器,以及收发器;所述存储器存储计算机执行指令;所述收发器,用于收发目标数据;所述处理器执行所述存储器存储的计算机执行指令,以实现第一方面中任一项所述的方法。
[0017]第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面中任一项所述的多表连接视图更新方法。
[0018]第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现第一方面中任一项所述的方法。
[0019]本专利技术实施例提供一种多表连接视图更新方法、装置、设备、存储介质及产品,获取满足更新条件的目标视图对应的目标视图语义数据;若根据目标视图语义数据确定目标视图是嵌套多表连接视图,确定目标更新语句对应的待合并查询树,以及目标视图语义数据对应的视图查询树,目标更新语句用于对目标视图进行更新,待合并查询树包括目标视
图对应的视图节点;确定视图查询树的根节点,将根节点链接至视图节点,以获得合并查询树;根据合并查询树对所述目标视图进行更新。若目标视图为嵌套多表连接视图,分别确定目标更新语句对应的待合并查询树,以及目标视图语义数据对应的视图查询树,将视图查询树的根节点链接至待合并查询树中的视图节点,进而获得合并查询树。通过本方法,在合并过程中没有改变目标更新语句和目标视图语义数据的语义,由此,在确保语义等价的前提下,对视图查询树和待合并查询树进行合并,根据合并查询树进行目标视图的更新,解决了在现有技术中,存在无法对多表连接视图进行更新的技术问题。
[0020]应当理解,上述
技术实现思路
部分中所描述的内容并非旨在限定本专利技术的实施例的关键或重要特征,亦非用于限制本专利技术的范围。本专利技术的其它特征将通本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种多表连接视图更新方法,其特征在于,包括:获取满足更新条件的目标视图对应的目标视图语义数据;若根据所述目标视图语义数据确定所述目标视图是嵌套多表连接视图,则确定目标更新语句对应的待合并查询树,以及所述目标视图语义数据对应的视图查询树,所述目标更新语句用于对所述目标视图进行更新,所述待合并查询树包括所述目标视图对应的视图节点;确定所述视图查询树的根节点,将所述根节点链接至所述视图节点,以获得合并查询树;根据所述合并查询树对所述目标视图进行更新。2.根据权利要求1所述的方法,其特征在于,所述获取满足更新条件的目标视图对应的目标视图语义数据,包括:获取目标视图对应的原始语义数据;根据所述原始语义数据确定所述目标视图是否满足更新条件;若确定所述目标视图满足更新条件,则确定所述目标视图对应的原始语义数据为所述目标视图对应的目标视图语义数据。3.根据权利要求2所述的方法,其特征在于,所述根据所述原始语义数据确定所述目标视图是否满足更新条件,包括:判断所述原始语义数据是否满足更新条件;若确定所述原始语义数据满足更新条件,则判断与所述原始语义数据对应的各个目标算子是否均满足更新条件;若确定所述各个目标算子均满足更新条件,则确定所述目标视图满足更新条件。4.根据权利要求3所述的方法,其特征在于,所述判断所述原始语义数据是否满足更新条件,包括:确定所述原始语义数据是否包括预先存储的不满足更新条件的关键词;若确定所述原始语义数据包括不满足更新条件的关键词,则确定所述原始语义数据不满足更新条件;若确定所述原始语义数据不包括不满足更新条件的关键词,则确定所述原始语义数据满足更新条件。5.根据权利要求3所述的方法,其特征在于,判断与所述原始语义数据对应的各个目标算子是否均满足更新条件,包括:将各所述目标算子与预先存储的满足更新条件的算子进行对比;若确定所述满足更新条件的算子中存在各所述目标算子,则确定各所述目标算子均满足更新条件;若确定所述满足更新条件的算子中不存在任一个所述目标算子,则确定对应的目标算子不满足更新条件。6.根据权利要求3所述的方法,其特征在于,判断与所述原始语义数据对应的各个目标算子是否均满足更新条件,包括:获取原始语义数据对应的原始语义查询树,所述原始语义查询树包括多个节点,所述多个节点包括多个叶子节点以及多个连接节点,所述多个叶子节点分别对应所述原始语义
数据中的多个基本表,所述多个连接节点分别对应所述各...
【专利技术属性】
技术研发人员:岳红波,王建华,
申请(专利权)人:北京人大金仓信息技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。