一种数据库变更方法及装置、存储介质及电子设备与流程

文档序号:31336976发布日期:2022-08-31 09:03阅读:39来源:国知局
一种数据库变更方法及装置、存储介质及电子设备与流程

1.本技术涉及计算机应用领域,尤其涉及一种数据库变更方法及装置、存储介质及电子设备。


背景技术:

2.软件应用开发经常涉及到数据库变更。
3.目前,数据库变更的过程为:当存在数据变更需求时,数据库变更团队对数据库进行影响分析,确定受影响的产品团队,并发起会议,通知所有受影响的产品团队,数据库变更团队和其他受影响的产品团队实施异步变更,并在功能测试阶段,集中验收数据库变更结果。由于数据库变更影响范围广,涉及到的人员多,沟通成本较大,并且,集中验收数据库变更结果,一旦发现问题,纠正问题的成本较高。


技术实现要素:

4.本技术提供了一种数据库变更方法及装置、存储介质及电子设备,目的在于解决现有的数据变更方案存在的成本高的问题。
5.为了实现上述目的,本技术提供了以下技术方案:
6.一种数据库变更方法,包括:
7.响应于数据库变更请求,确定待变更数据库;
8.在预设的关联库中查找与所述待变更数据库存在关联关系的各个关联产品;
9.将所述数据库变更请求发送至每个关联产品各自对应的产品负责人的用户终端;
10.获取用户终端反馈的用于指示是否需要同步变更的指示信息;
11.基于各个指示信息,从各个关联产品中确定目标产品;
12.获取所述待变更数据库的联调脚本;
13.针对每个目标产品,在接收到所述目标产品的联调脚本时,基于所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调。
14.上述的方法,可选的,所述响应于数据库变更请求,确定待变更数据库,包括:
15.响应于数据库变更请求,对所述数据库变更请求进行解析,得到所述库变更请求中包括的待变更数据库的数据库标识;
16.将所述数据库标识对应的数据库确定为待变更数据库。
17.上述的方法,可选的,所述在基于各个指示信息,从各个关联产品中确定目标产品,包括:
18.针对每个关联产品,判断所述关联产品对应的指示信息是否指示需要同步变更,若所述关联产品对应的指示信息指示需要同步变更,则将所述关联产品确定为目标产品。
19.上述的方法,可选的,所述基于所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调,包括:
20.在预设的开发环境中,运行所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调。
21.一种数据库变更装置,包括:
22.第一确定单元,用于响应于数据库变更请求,确定待变更数据库;
23.查找单元,用于在预设的关联库中查找与所述待变更数据库存在关联关系的各个关联产品;
24.发送单元,用于将所述数据库变更请求发送至每个关联产品各自对应的产品负责人的用户终端;
25.第一获取单元,用于获取用户终端反馈的用于指示是否需要同步变更的指示信息;
26.第二确定单元,用于基于各个指示信息,从各个关联产品中确定目标产品;
27.第二获取单元,用于获取所述待变更数据库的联调脚本;
28.联调单元,用于针对每个目标产品,在接收到所述目标产品的联调脚本时,基于所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调。
29.上述的装置,可选的,所述第一确定单元具体用于:
30.响应于数据库变更请求,对所述数据库变更请求进行解析,得到所述库变更请求中包括的待变更数据库的数据库标识;
31.将所述数据库标识对应的数据库确定为待变更数据库。
32.上述的装置,可选的,所述第二确定单元用于:
33.针对每个关联产品,判断所述关联产品对应的指示信息是否指示需要同步变更,若所述关联产品对应的指示信息指示需要同步变更,则将所述关联产品确定为目标产品。
34.上述的装置,可选的,所述联调单元在基于所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调时,具体用于:
35.在预设的开发环境中,运行所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调。
36.一种存储介质,所述存储介质存储有指令集,其中,所述指令集被处理器执行时实现上述的数据库变更方法。
37.一种电子设备,包括:
38.存储器,用于存储至少一组指令集;
39.处理器,用于执行所述存储器中存储的指令集,通过执行所述指令集实现上述的数据库变更方法。
40.与现有技术相比,本技术包括以下优点:
41.本技术提供了一种数据库变更方法及装置、存储介质及电子设备,该方法包括:预先在关联库中存储关联关系,从而通过查找关联关系,确定与待变更数据库存在关联关系的各个关联产品,并将数据库变更请求直接发送至关联产品对应的产品负责人的用户终端,获取用户终端反馈的用于指示是否需要同步变更的指示信息,基于各个指示信息,从各个关联产品中确定目标产品,获取待变更数据库的联调脚本,针对每个目标产品,在接收到目标产品的联调脚本时,基于目标产品的联调脚本和待变更数据库的联调脚本,对目标产
品和所述待变更数据库进行联调。可见,本技术方案,预先在关联库中存储关联关系,从而通过查找关联关系,确定与待变更数据库存在关联关系的各个关联产品,并将数据库变更请求发送至产品负责人的用户终端,减低了人工干预和沟通的成本,并且,对于已完成变更的目标产品可以提前进行该目标产品与待变更数据库的联调,而不是等到所有的目标产品均完成变更后,再集中联调,从而能够尽早发现问题,降低解决问题所花费的成本,从而提高效费比。
附图说明
42.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
43.图1为本技术提供的一种数据库变更方法的方法流程图;
44.图2为本技术提供的一种数据库变更方法的又一方法流程图;
45.图3为本技术提供的一种数据库变更方法的又一方法流程图;
46.图4为本技术提供的一种数据库变更方法的示例图;
47.图5为本技术提供的一种数据库变更装置的结构示意图;
48.图6为本技术提供的一种电子设备的结构示意图。
具体实施方式
49.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
50.本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
51.需要注意,本技术公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
52.需要注意,本技术公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
53.本技术可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
54.本技术提供的一种数据库变更方法及装置、存储介质及电子设备,可用于移动互联网或金融领域。其他领域为除移动互联网领域之外的任意领域,例如,金融领域。上述仅为示例,并不对本技术提供的一种数据库变更方法及装置、存储介质及电子设备的应用领
域进行限定。
55.本实施例中,为了便于理解,对本技术涉及的相关名词进行说明如下:
56.x86系统:指基于x86微服务框架的银行核心系统。
57.问题的解决效比:根据问题反馈的时间,问题发现的越早,解决问题花费的成本越低,效费比越高。
58.数据库的关联关系:指数据库关联产品中,数据的来源方和数据使用方的关系。
59.参阅图1,数据库变更方法的方法流程图如图1所示,应用于数据库变更系统,具体包括:
60.s101、响应于数据库变更请求,确定待变更数据库。
61.本实施例中,接收数据库变更团队发送的数据库变更请求,对数据库变更请求进行响应,确定待变更数据库。其中,数据库变更请求用于请求对数据库进行变更,变更包括但不限于库表结构变更。
62.其中,数据库变更请求中至少包括待变更数据库的数据库标识,数据库标识用于唯一标识数据库。
63.可选的,数据库变更请求中还包括,待变更信息和对待变更信息进行变更后的信息。
64.本实施例中,数据库变更请求可以是数据库变更团队在有数据库变更需求的情况下,通过触发数据库变更系统中的相关功能键生成的,也可以通过语音的方式生成。需要说明的是,数据库变更请求的生成方式有跟多,包括但不限于本技术实施例提出的内容,数据库变更请求的生成方式的不同不影响本技术实施例的实现。
65.参阅图2,响应于数据库变更请求,确定待变更数据库的过程,具体包括以下步骤:
66.s201、响应于数据库变更请求,对数据库变更请求进行解析,得到库变更请求中包括的待变更数据库的数据库标识。
67.本实施例中,响应于数据库变更团队发送的数据库变更请求,对数据库变更请求进行解析,从而得到数据库变更请求中包括的待变更数据库的数据库标识。
68.需要说明的是,由于数据库变更请求中包括待变更数据库的数据库标识,因此,通过解析数据库变更请求,从而能得到待变更数据库的数据库标识。
69.s202、将数据库标识对应的数据库确定为待变更数据库。
70.本实施例中,将数据库标识对应的数据库确定为待变更数据库。
71.s102、在预设的关联库中查找与待变更数据库存在关联关系的各个关联产品。
72.本实施例中,针对数据库变更关联系统包括的每个数据库,预先确定与该数据库具有关联关系的关联产品,并将该关联关系存储至关联库中,也就是说,预先在数据库变更关联系统中的关联库中存储数据库与该数据库的关联产品之间的关联关系,需要说明的是,关联关系对应的数据库和关联产品之间是数据来源方和数据使用方之间的关系,或数据使用方和数据来源方之间的关系。
73.本实施例中,在预设的关联库中查找与待变更数据库存在关联关系的各个关联产品,具体的,在关联库中查找待变更数据库对应的关联关系,从而基于关联关系,确定与待变更数据库存在关联关系的关联产品。
74.可选的,关联产品可以是数据库,也可以是系统。
75.s103、将数据库变更请求发送至每个关联产品各自对应的产品负责人的用户终端。
76.本实施例中,将数据库变更请求发送至每个关联产品各自对应的产品负责人的用户终端,以便产品负责人分析自身对应的关联产品是否需要同步比变更,并通过用户终端反馈指示信息,指示信息用于指示是否需要同步变更。
77.需要说明的是,若产品负责人反馈的是指示需要同步变更的指示信息,则进行对应的关联产品的联调产品的开发。
78.s104、获取用户终端反馈的用于指示是否需要同步变更的指示信息。
79.本实施例中,获取用户终端反馈的用于指示是否需要同步变更的指示信息。
80.s105、基于各个指示信息,从各个关联产品中确定目标产品。
81.本实施例中,基于各个指示信息,从各个关联产品中确定目标产品,具体的,参阅图3,包括以下步骤:
82.s301、针对每个关联产品,判断该关联产品对应的指示信息是否指示需要同步变更,若是,执行s302,若否,执行s303。
83.本实施例中,针对每个关联产品,判断该关联产品对应的指示信息是否指示需要同步变更。
84.s302、将该关联产品确定为目标产品。
85.本实施例中,针对每个关联产品,若该关联产品对应的指示信息指示需要同步变更,则将该关联产品确定为目标产品。
86.s303、不将该关联产品确定为目标产品。
87.本实施例中,针对每个关联产品,若该关联产品对应的指示信息指示不需要同步变更,则不将该关联产品确定为目标产品。
88.s106、获取待变更数据库的联调脚本。
89.本实施例中,数据库变更团队在完成对待变更数据库的联调脚本的编写后,将该联调脚本上传至数据库变更系统中。
90.本实施例中,获取数据库变更团队上传的待变更数据库的联调脚本,其中,待变更数据库的联调脚本为对待变更数据库进行变更后的数据库的脚本。
91.s107、针对每个目标产品,在接收到目标产品的联调脚本时,基于目标产品的联调脚本和待变更数据库的联调脚本,对目标产品和待变更数据库进行联调。
92.本实施例中,每个目标产品对应的负责人在完成对目标产品的联调脚本的编写后,将该联调脚本上传至数据库变更系统。其中,目标产品为联调脚本问对目标产品进行变更后的目标产品的脚本。
93.本实施例中,针对每个目标产品,在接收到该目标产品的联调脚本时,基于目标产品的联调脚本和待变更数据库的联调脚本,对目标产品和待变更数据库进行联调,具体的,在预设的开发环境中,运行目标产品的联调脚本和待变更数据库的联调脚本,从而实现对目标产品和待变更数据库的联调。
94.需要说明的是,本技术实施例对已完成变更的目标产品可以提前验收,也就是,直接对该目标产品与待变更数据库进行联调,从而能够尽早发现问题,降低解决问题所花费的成本,从而提高效费比。
95.本技术实施例提供的数据库变更方法,预先在关联库中存储关联关系,从而通过查找关联关系,确定与待变更数据库存在关联关系的各个关联产品,并将数据库变更请求直接发送至关联产品对应的产品负责人的用户终端,获取用户终端反馈的用于指示是否需要同步变更的指示信息,基于各个指示信息,从各个关联产品中确定目标产品,获取待变更数据库的联调脚本,针对每个目标产品,在接收到目标产品的联调脚本时,基于目标产品的联调脚本和待变更数据库的联调脚本,对目标产品和所述待变更数据库进行联调。可见,本技术方案,预先在关联库中存储关联关系,从而通过查找关联关系,确定与待变更数据库存在关联关系的各个关联产品,并将数据库变更请求发送至产品负责人的用户终端,减低了人工干预和沟通的成本,并且,对于已完成变更的目标产品可以提前进行该目标产品与待变更数据库的联调,而不是等到所有的目标产品均完成变更后,再集中联调,从而能够尽早发现问题,降低解决问题所花费的成本,从而提高效费比。
96.参阅图4,对本技术实施例提供的数据库变更方法的具体实现过程进行举例说明如下:
97.数据库变更系统包括数据库变更联动系统开发系统和数据库变更异步联调系统。
98.1.产品0数据库变更:产品0需要进行数据库变更,提交

数据库变更请求’到数据库变更系统中数据库变更联动系统。
99.2.数据变更联动系统:接收到

数据库变更请求’后,系统通过产品间数据库(即上述提及的关联库)血缘关系(即上述提及的关联关系)进行追溯,找出关联产品1、2、3,并自动推送给关联产品负责人。
100.3.开发系统:关联产品负责人1、2、3接收到数据库变更请求,确认本产品是否需要变更,如果不需要,反馈结束;如果需要,推送变更请求到开发系统,进行数据库变更开发,多个关联产品1、3同步进行开发。
101.4.数据库变更异步联调系统:产品3开发进度较快,提交产品3数据库联调脚本,与产品0数据库联调脚本进行联调;后续产品1开发完成后,对产品1和产品0数据库联调。
102.需要说明的是,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。
103.应当理解,本技术公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本技术公开的范围在此方面不受限制。
104.与图1所述的方法相对应,本技术实施例还提供了一种数据库变更装置,用于对图1中方法的具体实现,其结构示意图如图5所示,具体包括:
105.第一确定单元501,用于响应于数据库变更请求,确定待变更数据库;
106.查找单元502,用于在预设的关联库中查找与所述待变更数据库存在关联关系的各个关联产品;
107.发送单元503,用于将所述数据库变更请求发送至每个关联产品各自对应的产品负责人的用户终端;
108.第一获取单元504,用于获取用户终端反馈的用于指示是否需要同步变更的指示信息;
109.第二确定单元505,用于基于各个指示信息,从各个关联产品中确定目标产品;
110.第二获取单元506,用于获取所述待变更数据库的联调脚本;
111.联调单元507,用于针对每个目标产品,在接收到所述目标产品的联调脚本时,基于所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调。
112.本技术实施例提供的数据库变更装置,预先在关联库中存储关联关系,从而通过查找关联关系,确定与待变更数据库存在关联关系的各个关联产品,并将数据库变更请求发送至产品负责人的用户终端,减低了人工干预和沟通的成本,并且,对于已完成变更的目标产品可以提前进行该目标产品与待变更数据库的联调,而不是等到所有的目标产品均完成变更后,再集中联调,从而能够尽早发现问题,降低解决问题所花费的成本,从而提高效费比。
113.在本技术的一个实施例中,基于前述方案,第一确定单元501具体用于:
114.响应于数据库变更请求,对所述数据库变更请求进行解析,得到所述库变更请求中包括的待变更数据库的数据库标识;
115.将所述数据库标识对应的数据库确定为待变更数据库。
116.在本技术的一个实施例中,基于前述方案,第二确定单元505用于:
117.针对每个关联产品,判断所述关联产品对应的指示信息是否指示需要同步变更,若所述关联产品对应的指示信息指示需要同步变更,则将所述关联产品确定为目标产品。
118.在本技术的一个实施例中,基于前述方案,联调单元507在基于所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调时,具体用于:
119.在预设的开发环境中,运行所述目标产品的联调脚本和所述待变更数据库的联调脚本,对所述目标产品和所述待变更数据库进行联调。
120.本技术实施例还提供了一种存储介质,所述存储介质存储有指令集,其中,在所述指令集运行时执行如上文任一实施例公开的数据库变更方法。
121.本技术实施例还提供了一种电子设备,其结构示意图如图6所示,具体包括存储器601,用于存储至少一组指令集;处理器602,用于执行所述存储器中存储的指令集,通过执行所述指令集实现如上文任一实施例公开的数据库变更方法。
122.尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
123.虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本技术公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
124.以上描述仅为本技术公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本技术公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本技术公开中公开的(但不限
于)具有类似功能的技术特征进行互相替换而形成的技术方案。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1