数据表更新方法、数据库和计算机可读存储介质技术

技术编号:34566110 阅读:40 留言:0更新日期:2022-08-17 12:55
本公开是关于一种数据表更新方法、数据库和计算机可读存储介质。该方法包括:当确定主数据表中待修改的原始数据关联到从数据表且允许修改所述主数据表时,在所述主数据表内增加与所述原始数据相同的中间数据;获取所述主数据表的第一标识字段,根据所述第一标识字段确定将所述原始数据或所述中间数据关联到所述从数据表;调整所述原始数据和所述中间数据的第二标识字段;将未关联到所述从数据表的原始数据或者所述中间数据修改为目标数据,获得更新后的主数据表。本实施例中通过在主数据表中增加中间数据,并将从数据表关联到原始数据或者中间数据,同时修改原始数据和中间数据的第二标识字段,从而达到修改主数据表时不影响从数据表的效果。从数据表的效果。从数据表的效果。

【技术实现步骤摘要】
数据表更新方法、数据库和计算机可读存储介质


[0001]本公开涉及数据处理
,尤其涉及一种数据表更新方法、数据库和计算机可读存储介质。

技术介绍

[0002]随着大数据技术的发展,不同行业、部门等之间的数据会产生关联性,例如城市交通数据关联到城市中心联席指挥系统,城市交通数据与城市应急管理数据等业务产生关联。由于不同数据之间存在关联,因此修改一部分数据时会影响到基于该数据所生成的统计数据产生偏差,影响到统计数据的正常使用。

技术实现思路

[0003]本公开提供一种数据表更新方法、数据库和计算机可读存储介质,以解决相关技术的不足。
[0004]根据本公开实施例的第一方面,提供一种数据表更新方法,包括:
[0005]当确定主数据表中待修改的原始数据关联到从数据表且允许修改所述主数据表时,在所述主数据表内增加与所述原始数据相同的中间数据;
[0006]获取所述主数据表的第一标识字段,根据所述第一标识字段确定将所述原始数据或所述中间数据关联到所述从数据表;所述第一标识字段用于表示所述主数据表中主键的顺序允许修改或者禁止修改;
[0007]调整所述原始数据和所述中间数据的第二标识字段;所述第二标识字段用于表示数据是否发生修改;
[0008]将未关联到所述从数据表的原始数据或者所述中间数据修改为目标数据,获得更新后的主数据表。
[0009]可选地,确定主数据表中待修改的原始数据关联到从数据表,包括:
[0010]获取所述原始数据的主键和第三标识字段,所述第三标识字段用于表示从数据表是否允许跟随主数据表变化;
[0011]当所述第三标识字段取值为第一数值时,查询所述从数据表的外键;
[0012]当所述从数据表中的外键包括所述主键时确定所述原始数据关联到所述从数据表,当所述从数据表中的外键未包括所述主键时确定所述原始数据未关联到所述从数据表。
[0013]可选地,所述方法还包括:
[0014]当所述第三标识字段取值为第二数值时,修改所述原始数据为所述目标数据,获得更新后的主数据表。
[0015]可选地,所述方法还包括:
[0016]当确定所述原始数据未关联到所述从数据表时,将所述原始数据修改为所述目标数据,获得更新后的主数据表。
[0017]可选地,确定允许修改所述主数据表,包括:
[0018]当确定所述原始数据关联到所述从数据表时,获取第四标识字段,所述第四标识字段用于表示是否允许修改主数据表;
[0019]当所述第四标识字段取值为第一数值时,确定允许修改所述主数据表;当所述第四标识字段取值为第二数值时,确定所述确定主数据表不允许修改。
[0020]可选地,根据所述第一标识字段确定将所述原始数据或所述中间数据关联到所述从数据表,包括:
[0021]当所述第一标识字段取值为第一数值时,确定将所述原始数据关联到所述从数据表;或者,当所述第二标识字段取值为第二数值时,确定将所述中间数据关联到所述从数据表。
[0022]可选地,调整所述原始数据和所述中间数据的第二标识字段,包括:
[0023]当确定将所述原始数据关联到所述从数据表时,将所述中间数据的主键赋值给所述原始数据的第二标识字段,并且将所述中间数据的第二标识字段赋值为第二数值;所述第二数值用于表示本数据已经修改过;
[0024]或者,
[0025]当确定将所述中间数据关联到所述从数据表时,将所述中间数据关联到所述从数据表并将所述原始数据的主键赋值给所述中间数据的第二标识字段,并且将所述原始数据的第二标识字段赋值为第二数值;所述第二数值用于表示本数据已经修改过。
[0026]可选地,所述方法还包括:
[0027]验证所述从数据表的数据和/或统计结果是否发生改变。
[0028]可选地,所述主数据表修改时基于python语言和Django框架实现,或者基于JAVA语言和Hibernate/JDBC/MyBatis中的至少一种框架实现。
[0029]根据本公开实施例的第二方面,提供一种数据表更新装置,包括:
[0030]中间数据增加模块,用于在确定主数据表中待修改的原始数据关联到从数据表且允许修改所述主数据表时,在所述主数据表内增加与所述原始数据相同的中间数据;
[0031]关联数据确定模块,用于获取所述主数据表的第一标识字段,根据所述第一标识字段确定将所述原始数据或所述中间数据关联到所述从数据表;所述第一标识字段用于表示所述主数据表中主键的顺序允许修改或者禁止修改;
[0032]第二字段调整模块,用于调整所述原始数据和所述中间数据的第二标识字段;所述第二标识字段用于表示数据是否发生修改;
[0033]主数据表修改模块,用于将未关联到所述从数据表的原始数据或者所述中间数据修改为目标数据,获得更新后的主数据表。
[0034]可选地,所述中间数据增加模块包括:
[0035]主键字段获取子模块,用于获取所述原始数据的主键和第三标识字段,所述第三标识字段用于表示从数据表是否允许跟随主数据表变化;
[0036]外键获取子模块,用于在所述第三标识字段取值为第一数值时,查询所述从数据表的外键;
[0037]关联数据确定子模块,用于当所述从数据表中的外键包括所述主键时确定所述原始数据关联到所述从数据表,当所述从数据表中的外键未包括所述主键时确定所述原始数
据未关联到所述从数据表。
[0038]可选地,所述装置还包括:
[0039]所述主数据表修改模块,用于在所述第三标识字段取值为第二数值时,修改所述原始数据为所述目标数据,获得更新后的主数据表。
[0040]可选地,所述装置还包括:
[0041]所述主数据表修改模块,用于在确定所述原始数据未关联到所述从数据表时,将所述原始数据修改为所述目标数据,获得更新后的主数据表。
[0042]可选地,所述中间数据增加模块包括:
[0043]第四字段获取子模块,用于在确定所述原始数据关联到所述从数据表时,获取第四标识字段,所述第四标识字段用于表示是否允许修改主数据表;
[0044]数据表修改确定子模块,用于在所述第四标识字段取值为第一数值时,确定允许修改所述主数据表;在所述第四标识字段取值为第二数值时,确定所述确定主数据表不允许修改。
[0045]可选地,所述关联数据确定模块包括:
[0046]第一确定子模块,用于在所述第一标识字段取值为第一数值时,确定将所述原始数据关联到所述从数据表;或者,第二确定子模块,用于在所述第二标识字段取值为第二数值时,确定将所述中间数据关联到所述从数据表。
[0047]可选地,所述第二字段调整模块包括:
[0048]第一调整子模块,用于在确定将所述原始数据关联到所述从数据表时,将所述中间数据的主键赋值给所述原始数据的第二标识字段,并且将所述中间数据的第二标识字段赋值为第二数值;所述第二数值本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据表更新方法,其特征在于,包括:当确定主数据表中待修改的原始数据关联到从数据表且允许修改所述主数据表时,在所述主数据表内增加与所述原始数据相同的中间数据;获取所述主数据表的第一标识字段,根据所述第一标识字段确定将所述原始数据或所述中间数据关联到所述从数据表;其中,所述第一标识字段用于表示所述主数据表中主键的顺序允许修改或者禁止修改;调整所述原始数据和所述中间数据的第二标识字段;其中,所述第二标识字段用于表示数据是否发生修改;将未关联到所述从数据表的原始数据或者所述中间数据修改为目标数据,获得更新后的主数据表。2.根据权利要求1所述的方法,其特征在于,所述方法包括确定主数据表中待修改的原始数据是否关联到从数据表的步骤,具体包括:获取所述原始数据的主键和第三标识字段,所述第三标识字段用于表示从数据表是否允许跟随主数据表变化;当所述第三标识字段取值为第一数值时,查询所述从数据表的外键;当所述从数据表中的外键包括所述主键时,确定所述原始数据关联到所述从数据表;当所述从数据表中的外键未包括所述主键时确定所述原始数据未关联到所述从数据表。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述第三标识字段取值为第二数值时,修改所述原始数据为所述目标数据,获得更新后的主数据表。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:当确定所述原始数据未关联到所述从数据表时,将所述原始数据修改为所述目标数据,获得更新后的主数据表。5.根据权利要求2所述的方法,其特征在于,所述方法包括确定是否允许修改所述主数据表的步骤,具体包括:当确定所述原始数据关联到所述从数据表时,获取第四标识字段,所述第四标识字段用于表示是否允许修改主数据表;当所述第四标识字段取值为第一数值时,确定允许修改所述主数据表;当所述第四标识字段取值为第二数值时,确定所述确定主数据表不允许修改。6.根据权利要求1所述的方法,其特征在于,根据所述第一标识字段确定将所述原始数据或所述中间数据关联到所述从数据表,包括:当所述第一标识字段取值为第一数值时,确定将所述原始数据关联到所述从数据表;或者,当所述第二标识字段取值为第二数值时,确定将所述中间数据关联到所述从数据表。7.根据权利要求1所述的方法,其特征在于,调整所述原始数据和所述中间数据的第二标识字段,包括:当确定将所述原始数据关联到所述从数据表时,将所述中间数据的主键赋值给所述原始数据的第二标识字段,并且将所述中间数据的第二标识字段赋值为第二数值;所述第二数值用于表示本数据已经修改过;或者,
当确定将所述中间数据关联到所述从数据表时,将所述中间数据关联到所述从数据表并将所述原始数据的主键赋值给所述中间数据的第二标识字段,并且将所述原始数据的第二标识字段赋值为第二数值;所述第二数值用于表示本数据已经修改过。8.根据权利要求6或7所述的方法,其特征在于,所述方法还包括:验证所述从数据表的数据和/或统计结果是否发生改变。9.根据权利要求1~5、8任一项所述的方法,其特征在于,所述主数据表修改时基于python语言和Django框架实现,或者基于JAVA语言和Hibernate/JDBC/MyBatis中的至少一种框架实现。10.一种数据表更新装置,其特征在于,包括:中间数据增加模块,用于在确定主数据表中待修改的原始数据关联到从数据表且允许修改所述主数据表时,在所述主数据表内增加与所述原始数据相同的中间数据;关联数据确定模块,用于获取所述主数据表的第一标识字段,根据所述第一标识字段确定将所述原始数据或所述中间数据...

【专利技术属性】
技术研发人员:朱祥姜宇袁峻
申请(专利权)人:北京京东方能源科技有限公司
类型:发明
国别省市:

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

1