CN109492014A - 一种数据库模型包创建方法、装置及设备 - Google Patents
一种数据库模型包创建方法、装置及设备 Download PDFInfo
- Publication number
- CN109492014A CN109492014A CN201811603077.2A CN201811603077A CN109492014A CN 109492014 A CN109492014 A CN 109492014A CN 201811603077 A CN201811603077 A CN 201811603077A CN 109492014 A CN109492014 A CN 109492014A
- Authority
- CN
- China
- Prior art keywords
- model
- packet
- model packet
- database
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004519 manufacturing process Methods 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 abstract description 6
- 238000013515 script Methods 0.000 description 10
- 238000012986 modification Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 238000013499 data model Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据库模型包创建方法、装置及设备,包括:创建与目标对象对应的对象模型包;从预设产品模型库中,确定出与所述目标对象存在关联性的产品模型包,得到目标产品模型包;创建所述对象模型包与所述目标产品模型包之间的引用关系,以使所述对象模型包引用所述目标产品模型包;对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包。本申请中上述完整数据库模型包是在引用上述目标产品模型包的基础上得到的,从而使得当目标产品模型包发生变更的同时,上述完整数据库模型包也会因此自动实现同步更新,而无需额外进行更新操作,从而简化了同步过程。
Description
技术领域
本申请涉及数据库技术领域,特别涉及一种数据库模型包创建方法、装置及设备。
背景技术
目前主流数据库模型建模软件包括PowerDesigner、ER/Studio、ERWin等,通过上述数据库模型建模软件,可以针对一个项目或一个产品创建相应的数据库模型包。当一个产品可以在多个项目中实施时,为了满足不同项目中特定的需求场景,需要在上述产品对应的产品模型包的基础上进行二次开发,从而得到不同项目各自对应的项目模型包,其中每个项目模型包中均包括与上述产品模型包对应的独立副本。可是,正是由于每个项目模型包中均保存有与上述产品模型包对应的独立副本,从而导致当上述产品模型包发生变更之后,还需要专门对每个项目模型包中的副本进行额外的更新操作,才能保证项目模型包中的副本与上述产品模型包相一致,由此可见,上述同步过程是相当繁琐复杂的。
发明内容
有鉴于此,本申请的目的在于提供一种数据库模型包创建方法、装置及设备,通过上述方案能够以一种全新方式在产品模型包的基础上针对目标对象进行二次开发,并使得在上述产品模型包发生变更的同时,上述二次开发后得到的完整数据库模型包便会自动实现同步更新,而无需额外进行更新操作,从而简化了同步过程。其具体方案如下:
第一方面,本申请公开了一种数据库模型包创建方法,包括:
创建与目标对象对应的对象模型包;
从预设产品模型库中,确定出与所述目标对象存在关联性的产品模型包,得到目标产品模型包;其中,所述预设产品模型库用于保存预先创建的产品模型包;
创建所述对象模型包与所述目标产品模型包之间的引用关系,以使所述对象模型包引用所述目标产品模型包;
对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包。
可选的,所述目标对象的对象类型为项目类型或产品类型。
可选的,所述对当前被所述对象模型包引用的所述目标产品模型包进行合并操作之前,还包括:
判断当前被所述对象模型包引用的所述目标产品模型包中的每一数据库模型是否满足与所述目标对象对应的模型需求;
如果否,则根据所述模型需求,在所述对象模型包中对当前被所述对象模型包引用的所述目标产品模型包中相应的数据库模型进行相应修改,得到修改后的模型副本;
其中,所述数据库模型包括数据表模型、数据表字段模型、视图模型、索引模型和枚举模型。
可选的,所述对当前被所述对象模型包引用的所述目标产品模型包进行合并操作之前,还包括:
判断所述修改后的模型副本以及当前被所述对象模型包引用的所述目标产品模型包中的所有数据库模型是否能够满足与所述目标对象对应的全部的模型需求;
如果否,则在所述对象模型包中创建相应的新的数据库模型,得到扩展模型。
可选的,所述对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包,包括:
将所述修改后的模型副本和所述扩展模型确定为当前所述目标对象的差异模型;
将当前被所述对象模型包引用的所述目标产品模型包和所述差异模型进行合并,以输出所述目标对象的完整数据库模型包。
可选的,所述数据库模型包创建方法,还包括:
为所述完整数据库模型包分配相应的版本号。
可选的,所述数据库模型包创建方法,还包括:
对所述完整数据库模型包进行监视;
若监视到所述完整数据库模型包中的任意数据库模型被修改,则记录相应的变更内容,并为本次修改后的模型包分配新的版本号。
可选的,所述数据库模型包创建方法,还包括:
获取包含第一版本号和第二版本号的增量信息查询请求;
从记录下来的所述变更内容中选取出位于所述第一版本号和所述第二版本号之间的所有变更内容;
对所述变更内容进行合并,以输出相应的增量模型。
第二方面,本申请公开了一种数据库模型包创建装置,包括:
模型包创建模块,用于创建与目标对象对应的对象模型包;
模型包确定模块,用于从预设产品模型库中,确定出与所述目标对象存在关联性的产品模型包,得到目标产品模型包;其中,所述预设产品模型库用于保存预先创建的产品模型包;
模型包引用模型,用于创建所述对象模型包与所述目标产品模型包之间的引用关系,以使所述对象模型包引用所述目标产品模型包;
模型包合并模块,用于对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包。
第三方面,本申请公开了一种数据库模型包创建设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的数据库模型包创建方法。
可见,本申请在创建完目标对象对应的对象模型包以及从预设产品模型库中确定出与目标对象存在关联性的目标产品模型包之后,会进一步创建上述对象模型包与目标产品模型包之间的引用关系,从而使得上述对象模型包引用上述目标产品模型包,在创建完上述引用关系之后,通过对当前被所述对象模型包引用的目标产品模型包进行合并,便可输出目标对象的完整数据库模型包,由此可见,上述模型二次开发过程中所输出的完整数据库模型包是基于当前被所述对象模型包引用的目标产品模型包得到的,也即上述完整数据库模型包是在引用上述目标产品模型包的基础上得到的,从而使得当目标产品模型包发生变更的同时,上述完整数据库模型包也会因此自动实现同步更新,而无需额外进行更新操作,从而简化了同步过程。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种数据库模型包创建方法流程图;
图2为本申请公开的一种具体的数据库模型包创建方法流程图;
图3为本申请公开的一种数据库模型包创建方法子流程图;
图4为本申请公开的一种数据库模型包创建装置结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例公开了一种数据库模型包创建方法,参见图1所示,该方法包括:
步骤S11:创建与目标对象对应的对象模型包。
步骤S12:从预设产品模型库中,确定出与所述目标对象存在关联性的产品模型包,得到目标产品模型包;其中,所述预设产品模型库用于保存预先创建的产品模型包。
需要指出的是,由于一个项目可以涉及多种产品,所以本实施例中所述目标对象的对象类型具体可以为项目类型。当然,考虑到有些比较复杂的产品中会包含相对比较简单的产品,所以本实施例中所述目标对象的对象类型具体也可以是产品类型。也即,本实施例中的目标对象既可以是目标项目,也可以是目标产品,与目标对象对应的对象模型包可以是项目模型包或产品模型包。
本实施例中,上述预设产品模型库中包括预先创建的产品模型包,并且,每个预先创建的产品模型包中均可以包括若干数据库模型,如包括但不限于数据表模型、数据表字段模型、视图模型、索引模型、枚举模型等。
本实施例中,需要从上述预设产品模型库中选取出与目标对象存在关联性的产品模型包作为目标产品模型包,具体的,可以先从上述预设产品模型库对应的所有产品中筛选出目标对象所依赖的产品,然后从上述产品模型库中选取出与上述筛选出的产品对应的产品模型包作为目标产品模型包。
步骤S13:创建所述对象模型包与所述目标产品模型包之间的引用关系,以使所述对象模型包引用所述目标产品模型包。
也即,在创建完目标对象所对应的对象模型包以及从预设产品模型库中确定出与目标对象相关联的目标产品模型包之后,并非是通过副本复制的方式将上述目标产品模型包直接拷贝至对象模型包中,而是创建对象模型包与目标产品模型包之间的引用关系,也即只需让对象模型包引用目标产品模型包即可,从而可以使得目标项目或目标产品拥有其所引用的目标产品模型包中的所有数据库模型,并且,这样当后期目标产品模型包发生变更的同时,与目标对象对应的模型包会自动实现同步更新,而无需进行额外的操作来完成更新。
步骤S14:对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包。
需要进一步指出的是,上述预设产品模型库中的任意产品模型包除了可以被外界引用之外,其自身也可以引用上述预设产品模型库中的其他产品模型包。
进一步的,若本实施例中所述目标对象的对象类型为产品类型,那么通过上述过程得到与该目标对象对应的完整数据模型包之后,还可以将该完整数据模型包作为一个新的产品模型包保存至上述预设产品模型库中,以实现对上述预设产品模型库的扩展。
另外,本实施例可以采用C/S模式或B/S模式,将多个产品或项目的数据文件保存在服务端数据库,支持多人协作管理。
可见,本申请实施例在创建完目标对象对应的对象模型包以及从预设产品模型库中确定出与目标对象存在关联性的目标产品模型包之后,会进一步创建上述对象模型包与目标产品模型包之间的引用关系,从而使得上述对象模型包引用上述目标产品模型包,在创建完上述引用关系之后,通过对当前被所述对象模型包引用的目标产品模型包进行合并,便可输出目标对象的完整数据库模型包,由此可见,上述模型二次开发过程中所输出的完整数据库模型包是基于当前被所述对象模型包引用的目标产品模型包得到的,也即上述完整数据库模型包是在引用上述目标产品模型包的基础上得到的,从而使得当目标产品模型包发生变更的同时,上述完整数据库模型包也会因此自动实现同步更新,而无需额外进行更新操作,从而简化了同步过程。
参见图2所示,本申请实施例公开了一种具体的数据库模型包创建方法,包括:
步骤S21:创建与目标对象对应的对象模型包。
步骤S22:从预设产品模型库中,确定出与所述目标对象存在关联性的产品模型包,得到目标产品模型包;其中,所述预设产品模型库用于保存预先创建的产品模型包。
步骤S23:创建所述对象模型包与所述目标产品模型包之间的引用关系,以使所述对象模型包引用所述目标产品模型包。
本实施例中,项目模型包或产品模型包的信息具体可以如表1所示:
表1
字段名 | 中文名 | 描述 |
NAME | 模型包名称 | 用来识别产品或项目的名称 |
CODE | 模型包编码 | 用来识别产品或项目的唯一编码 |
TYPE | 模型包类型 | 区分产品模型包和项目模型包。 |
REMARK | 描述信息 | 该模型包简要描述信息 |
CREATE_USER | 创建人 | 创建该模型包的操作员 |
CREATE_TIME | 创建时间 | 创建该模型包的时间 |
本实施例中,一个目标产品或目标项目的模型包可以引用其他多个产品模型包,它们之间的引用关系可以通过表2来表示:
表2
另外,关于上述步骤S21至S23更加具体的过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
步骤S24:判断当前被所述对象模型包引用的所述目标产品模型包中的每一数据库模型是否满足与所述目标对象对应的模型需求。
其中,所述数据库模型包括数据表模型、数据表字段模型、视图模型、索引模型和枚举模型。另外,可以理解的是,为了区分不同项目或产品的数据库模型,可以在上述每个数据库模型的相关信息中添加相应的模型包编码。
本实施例中,数据表模型的相关信息可以如表3所示:
表3
字段名 | 中文名 | 描述 |
TITLE | 数据表标题 | 数据表的标题 |
NAME | 数据表名称 | 数据表的名称 |
PKG_CODE | 模型包编码 | 所属产品或项目模型包的编码 |
REMARK | 描述信息 | 数据表的简要描述信息 |
CREATE_USER | 创建人 | 创建数据表的操作员 |
CREATE_TIME | 创建时间 | 创建数据表的时间 |
LAST_MODIFY_USER | 修改人 | 最近修改数据表的操作员 |
LAST_MODIFY_TIME | 修改时间 | 最近修改数据表的时间 |
本实施例中,数据表字段模型的相关信息可以如表4所示:
表4
本实施例中,视图模型的相关信息可以如表5所示:
表5
字段名 | 中文名 | 描述 |
TITLE | 视图标题 | 视图的标题 |
NAME | 视图名称 | 视图的名称 |
PKG_CODE | 模型包编码 | 所属产品或项目模型包的编码 |
SQL | 视图SQL | 视图的SQL脚本 |
CREATE_USER | 创建人 | 创建视图的操作员 |
CREATE_TIME | 创建时间 | 创建视图的时间 |
LAST_MODIFY_USER | 修改人 | 最近视图的操作员 |
LAST_MODIFY_TIME | 修改时间 | 最近视图的时间 |
本实施例中,索引模型的相关信息可以如表6所示:
表6
字段名 | 中文名 | 描述 |
TABLE_NAME | 数据表编码 | 所属数据表编码 |
NAME | 索引名称 | 索引的名称 |
PKG_CODE | 模型包编码 | 所属产品或项目模型包的编码 |
COLUMNS | 索引字段 | 索引的字段集合 |
TYPE | 索引类型 | 包括普通、唯一等 |
CREATE_USER | 创建人 | 创建视图的操作员 |
CREATE_TIME | 创建时间 | 创建视图的时间 |
LAST_MODIFY_USER | 修改人 | 最近视图的操作员 |
LAST_MODIFY_TIME | 修改时间 | 最近视图的时间 |
本实施例中,枚举模型的相关信息可以如表7所示:
表7
字段名 | 中文名 | 描述 |
NAME | 枚举名称 | 枚举的唯一名称 |
ITEM_NAME | 枚举项目名称 | 每一个枚举值对应的显示名称 |
ITEM_VALUE | 枚举项目值 | 每一个枚举值对应的存储值 |
PKG_CODE | 模型包编码 | 所属产品或项目模型包的编码 |
SORT_NO | 排序序号 | 用于枚举值显示的顺序 |
CREATE_USER | 创建人 | 创建枚举的操作员 |
CREATE_TIME | 创建时间 | 创建枚举的时间 |
LAST_MODIFY_USER | 修改人 | 最近枚举的操作员 |
LAST_MODIFY_TIME | 修改时间 | 最近枚举的时间 |
步骤S25:如果否,则根据所述模型需求,在所述对象模型包中对当前被所述对象模型包引用的所述目标产品模型包中相应的数据库模型进行相应修改,得到修改后的模型副本。
也即,本实施例在被对象模型包引用的目标产品模型包中的任一数据库模型无法满足所述目标对象对应的模型需求时,可以在所述对象模型包中针对该数据库模型做出相应的修改,也即,本实施例不是直接在目标产品模型包中对相应的数据库模型进行修改,而是在对象模型包中针对上述数据库模型进行修改,具体的,可以通过在对象模型包中针对上述数据库模型进行相应的修改,得到位于对象模型包中的一个新的模型副本,并利用该模型副本覆盖对象模型包中原先引用的数据库模型,从而实现在不真正修改目标产品模型包中的数据库模型的前提下,使得对象模型包中的数据库模型能够满足目标对象对应的模型需求。
步骤S26:判断所述修改后的模型副本以及当前被所述对象模型包引用的所述目标产品模型包中的所有数据库模型是否能够满足与所述目标对象对应的全部的模型需求。
步骤S27:如果否,则在所述对象模型包中创建相应的新的数据库模型,得到扩展模型。
也即,在对象模型包引用了相关的目标产品模型包,并且根据模型需求在对象模型包中针对相应的引用的数据库模型进行修改之后,如果此时对象模型包依然无法满足目标对象对应的全部的模型需求,也即,如果此时对象模型包不具备目标对象对应的某些模型需求时,则可以在对象模型包中创建相应的新的数据库模型,从而得到扩展模型。可以理解的是,由于上述扩展模型是在对象模型包中创建的,在该对象模型包还没有被外界其他产品或项目引用的情况下,此时该对象模型包中的上述扩展模型对于其他产品或项目来说是不可见的。
本实施例中,上述扩展模型的类型包括但不限于数据表模型、数据表字段模型、视图模型、索引模型和枚举模型。
步骤S28:将所述修改后的模型副本和所述扩展模型确定为当前所述目标对象的差异模型。
另外,本实施例在确定出上述差异模型之后,还可以输出该差异模型,以及提取与该差异模型对应的全部SQL脚本,得到差异SQL脚本,并输出该差异SQL脚本。
步骤S29:将当前被所述对象模型包引用的所述目标产品模型包和所述差异模型进行合并,以输出所述目标对象的完整数据库模型包。
需要指出的是,在得到上述完整数据库模型包之后,也可以根据以后目标项目或目标产品的实际需求变化情况,对上述完整数据库模型包中的数据库模型进行相应的修改操作。可以理解的是,上述修改操作包括但不限于微调、删除、新增等操作。
进一步的,在得到上述完整数据库模型包之后,还可以全量提取与该完整数据库模型包对应的全部SQL脚本,并输出该SQL脚本。
参见图3所示,在前述实施例公开的内容的基础上,本申请实施例中,进一步包括:
步骤S31:为所述完整数据库模型包分配相应的版本号。
步骤S32:对所述完整数据库模型包进行监视。
步骤S33:若监视到所述完整数据库模型包中的任意数据库模型被修改,则记录相应的变更内容,并为本次修改后的模型包分配新的版本号。
需要说明的是,在记录上述变更内容时,具体可以细化到原子级别,也即具体可以细化到数据表模型、数据表字段模型、视图模型、索引模型和枚举模型等级别,通过这种级别的记录方式,可以将记录的每一项变更内容均转换成相应的一条数据库脚本。
由上可知,本实施例在创建和修改上述完整数据库模型包时,均会产生相应的版本号。可以理解的是,本实施例具体可以按照模型包的变更时间先后顺序,依序创建从小到大的版本号,也即,变更时间越靠后,相应的版本号变越大。
本实施例中,在模型包中的任意数据库模型被修改时,具体可以记录包含相应变更内容以及新分配的版本号的版本信息,通过查询该版本信息,可以确定出相应的变更内容以及版本号。其中,上述版本信息具体可以如表8所示:
表8
步骤S34:获取包含第一版本号和第二版本号的增量信息查询请求。
步骤S35:从记录下来的所述变更内容中选取出位于所述第一版本号和所述第二版本号之间的所有变更内容。
步骤S36:对所述变更内容进行合并,以输出相应的增量模型。
本实施例中,增量信息查询请求包含第一版本号和第二版本号,其中,上述第一版本号作为起始版本号,上述第二版本号作为结束版本号。通过上述两个版本号可以从前述记录下来的变更内容中查询出位于上述起始版本号和结束版本号之间的所有变更内容。
在一种具体实施方式中,上述增量信息查询请求可以由后台***自动根据预设的迭代周期来进行定期触发,与此对应的,用作起始版本号的第一版本号对应于每个迭代周期的开始时刻,用作结束版本号的第二版本号对应于每个迭代周期的结束时刻。
在另一种具体实施方式中,上述增量信息查询请求也可以由用户来发起,此时可允许用户根据自身的实际查询需要,选取任意的版本号作为第一版本号和第二版本号。
另外,本实施例在查询到上述所有的相应变更内容之后,还需要对这些变更内容进行合并。在一些实施例中,可以根据以最大版本号为基准的合并规则进行合并,例如,在上述查询到的所有变更内容中,如果针对同一字段多次变更了字段长度、字段描述等字段属性,则可以只取与最大版本号对应的变更内容。在另一些实施例中,可以根据互斥抵消的合并规则进行合并,例如,当针对同一字段先后出现新增、删除等变更操作,则可以通过字段之间的相互抵消来进行合并。
进一步的,本实施例在输出相应的增量模型的同时,也可以提取与该增量模型对应的全部SQL脚本,得到相应的增量SQL脚本,并输出该增量SQL脚本。
参见图4所示,本申请实施例公开了一种数据库模型包创建装置,包括:
模型包创建模块11,用于创建与目标对象对应的对象模型包;
模型包确定模块12,用于从预设产品模型库中,确定出与所述目标对象存在关联性的产品模型包,得到目标产品模型包;其中,所述预设产品模型库用于保存预先创建的产品模型包;
模型包引用模型13,用于创建所述对象模型包与所述目标产品模型包之间的引用关系,以使所述对象模型包引用所述目标产品模型包;
模型包合并模块14,用于对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包。
其中,关于上述各个模块更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请实施例在创建完目标对象对应的对象模型包以及从预设产品模型库中确定出与目标对象存在关联性的目标产品模型包之后,会进一步创建上述对象模型包与目标产品模型包之间的引用关系,从而使得上述对象模型包引用上述目标产品模型包,在创建完上述引用关系之后,通过对当前被所述对象模型包引用的目标产品模型包进行合并,便可输出目标对象的完整数据库模型包,由此可见,上述模型二次开发过程中所输出的完整数据库模型包是基于当前被所述对象模型包引用的目标产品模型包得到的,也即上述完整数据库模型包是在引用上述目标产品模型包的基础上得到的,从而使得当目标产品模型包发生变更的同时,上述完整数据库模型包也会因此自动实现同步更新,而无需额外进行更新操作,从而简化了同步过程。
进一步的,本申请还公开了一种数据库模型包创建设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的数据库模型包创建方法。
其中,关于上述数据库模型包创建方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种数据库模型包创建方法、装置及设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种数据库模型包创建方法,其特征在于,包括:
创建与目标对象对应的对象模型包;
从预设产品模型库中,确定出与所述目标对象存在关联性的产品模型包,得到目标产品模型包;其中,所述预设产品模型库用于保存预先创建的产品模型包;
创建所述对象模型包与所述目标产品模型包之间的引用关系,以使所述对象模型包引用所述目标产品模型包;
对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包。
2.根据权利要求1所述的数据库模型包创建方法,其特征在于,所述目标对象的对象类型为项目类型或产品类型。
3.根据权利要求1所述的数据库模型包创建方法,其特征在于,所述对当前被所述对象模型包引用的所述目标产品模型包进行合并操作之前,还包括:
判断当前被所述对象模型包引用的所述目标产品模型包中的每一数据库模型是否满足与所述目标对象对应的模型需求;
如果否,则根据所述模型需求,在所述对象模型包中对当前被所述对象模型包引用的所述目标产品模型包中相应的数据库模型进行相应修改,得到修改后的模型副本;
其中,所述数据库模型包括数据表模型、数据表字段模型、视图模型、索引模型和枚举模型。
4.根据权利要求3所述的数据库模型包创建方法,其特征在于,所述对当前被所述对象模型包引用的所述目标产品模型包进行合并操作之前,还包括:
判断所述修改后的模型副本以及当前被所述对象模型包引用的所述目标产品模型包中的所有数据库模型是否能够满足与所述目标对象对应的全部的模型需求;
如果否,则在所述对象模型包中创建相应的新的数据库模型,得到扩展模型。
5.根据权利要求4所述的数据库模型包创建方法,其特征在于,所述对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包,包括:
将所述修改后的模型副本和所述扩展模型确定为当前所述目标对象的差异模型;
将当前被所述对象模型包引用的所述目标产品模型包和所述差异模型进行合并,以输出所述目标对象的完整数据库模型包。
6.根据权利要求1至5任一项所述的数据库模型包创建方法,其特征在于,还包括:
为所述完整数据库模型包分配相应的版本号。
7.根据权利要求6所述的数据库模型包创建方法,其特征在于,还包括:
对所述完整数据库模型包进行监视;
若监视到所述完整数据库模型包中的任意数据库模型被修改,则记录相应的变更内容,并为本次修改后的模型包分配新的版本号。
8.根据权利要求7所述的数据库模型包创建方法,其特征在于,还包括:
获取包含第一版本号和第二版本号的增量信息查询请求;
从记录下来的所述变更内容中选取出位于所述第一版本号和所述第二版本号之间的所有变更内容;
对所述变更内容进行合并,以输出相应的增量模型。
9.一种数据库模型包创建装置,其特征在于,包括:
模型包创建模块,用于创建与目标对象对应的对象模型包;
模型包确定模块,用于从预设产品模型库中,确定出与所述目标对象存在关联性的产品模型包,得到目标产品模型包;其中,所述预设产品模型库用于保存预先创建的产品模型包;
模型包引用模型,用于创建所述对象模型包与所述目标产品模型包之间的引用关系,以使所述对象模型包引用所述目标产品模型包;
模型包合并模块,用于对当前被所述对象模型包引用的所述目标产品模型包进行合并操作,以输出所述目标对象的完整数据库模型包。
10.一种数据库模型包创建设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至8任一项所述的数据库模型包创建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811603077.2A CN109492014A (zh) | 2018-12-26 | 2018-12-26 | 一种数据库模型包创建方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811603077.2A CN109492014A (zh) | 2018-12-26 | 2018-12-26 | 一种数据库模型包创建方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109492014A true CN109492014A (zh) | 2019-03-19 |
Family
ID=65712312
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811603077.2A Pending CN109492014A (zh) | 2018-12-26 | 2018-12-26 | 一种数据库模型包创建方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109492014A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111813880A (zh) * | 2020-06-09 | 2020-10-23 | 广东国地规划科技股份有限公司 | 一种国土空间规划项目管理方法、***及存储介质 |
CN113918209A (zh) * | 2021-12-16 | 2022-01-11 | 深圳市明源云科技有限公司 | 一种升级清单生成方法、设备及可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1190477A (zh) * | 1995-07-07 | 1998-08-12 | 瓦尔数据公司 | 修改现有数据库以反映相应对象模型变化的方法和装置 |
US20080263104A1 (en) * | 2006-06-15 | 2008-10-23 | Chowdhary Pawan R | Updating a data warehouse schema based on changes in an observation model |
CN103810257A (zh) * | 2014-01-24 | 2014-05-21 | 华为技术有限公司 | 一种升级软件数据库的方法、装置及设备 |
CN104408118A (zh) * | 2014-11-25 | 2015-03-11 | 北京国双科技有限公司 | 数据库的创建方法和装置 |
EP2856345A1 (en) * | 2012-05-24 | 2015-04-08 | Telefonaktiebolaget LM Ericsson (PUBL) | Meta model driven data export from a database and meta model driven data import to a database |
CN104573100A (zh) * | 2015-01-29 | 2015-04-29 | 无锡江南计算技术研究所 | 一种带自增量标识的分步式数据库同步方法 |
CN105786925A (zh) * | 2014-12-26 | 2016-07-20 | 远光软件股份有限公司 | 基于参考模型进行动态数据建模的方法及装置 |
CN106649771A (zh) * | 2016-12-27 | 2017-05-10 | 广州杰赛科技股份有限公司 | 数据库的数据模型更新方法和*** |
-
2018
- 2018-12-26 CN CN201811603077.2A patent/CN109492014A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1190477A (zh) * | 1995-07-07 | 1998-08-12 | 瓦尔数据公司 | 修改现有数据库以反映相应对象模型变化的方法和装置 |
US20080263104A1 (en) * | 2006-06-15 | 2008-10-23 | Chowdhary Pawan R | Updating a data warehouse schema based on changes in an observation model |
EP2856345A1 (en) * | 2012-05-24 | 2015-04-08 | Telefonaktiebolaget LM Ericsson (PUBL) | Meta model driven data export from a database and meta model driven data import to a database |
CN103810257A (zh) * | 2014-01-24 | 2014-05-21 | 华为技术有限公司 | 一种升级软件数据库的方法、装置及设备 |
CN104408118A (zh) * | 2014-11-25 | 2015-03-11 | 北京国双科技有限公司 | 数据库的创建方法和装置 |
CN105786925A (zh) * | 2014-12-26 | 2016-07-20 | 远光软件股份有限公司 | 基于参考模型进行动态数据建模的方法及装置 |
CN104573100A (zh) * | 2015-01-29 | 2015-04-29 | 无锡江南计算技术研究所 | 一种带自增量标识的分步式数据库同步方法 |
CN106649771A (zh) * | 2016-12-27 | 2017-05-10 | 广州杰赛科技股份有限公司 | 数据库的数据模型更新方法和*** |
Non-Patent Citations (1)
Title |
---|
S_H_C: "材质-Material和预设体-Prefabs", 《URL: HTTPS://WWW.JIANSHU.COM/P/12E0E06E3112》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111813880A (zh) * | 2020-06-09 | 2020-10-23 | 广东国地规划科技股份有限公司 | 一种国土空间规划项目管理方法、***及存储介质 |
CN111813880B (zh) * | 2020-06-09 | 2024-03-19 | 广东国地规划科技股份有限公司 | 一种国土空间规划项目管理方法、***及存储介质 |
CN113918209A (zh) * | 2021-12-16 | 2022-01-11 | 深圳市明源云科技有限公司 | 一种升级清单生成方法、设备及可读存储介质 |
CN113918209B (zh) * | 2021-12-16 | 2022-04-15 | 深圳市明源云科技有限公司 | 一种升级清单生成方法、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103902632B (zh) | 键值存储***中构建文件***的方法、装置及电子设备 | |
US8788457B2 (en) | Ensuring that the archival data deleted in relational source table is already stored in relational target table | |
US8478719B2 (en) | System and method for media file synchronization | |
US11893046B2 (en) | Method and apparatus for implementing a set of integrated data systems | |
CN101158958B (zh) | 基于MySQL存储引擎的融合查询方法 | |
CN104781809A (zh) | 容器数据库 | |
EP1585036A2 (en) | Management of parameterized database queries | |
CN102193991B (zh) | 基于oltp的数据修改方法、***及图形数据库服务器 | |
DE202010018481U1 (de) | Asynchroner verteilter Objekt-Upload für replizierte Assoziativspeichercluster | |
US20120239617A1 (en) | System and method for media file synchronization | |
CN108536752A (zh) | 一种数据同步方法、装置和设备 | |
CN108369587A (zh) | 创建用于交换的表 | |
CN103970833A (zh) | 一种基于日志的异构数据库同步***中双向同步数据循环的解决方法 | |
CN107025242A (zh) | 数据库间数据的复制方法及装置 | |
CN105095319A (zh) | 基于时间序列化的文档的标识、关联、搜索及展现的*** | |
CN104142930A (zh) | 通用δ数据装载 | |
CN109325158A (zh) | 一种电子文件自动化归档方法及*** | |
CN107562931A (zh) | 数据抽取***和数据抽取方法 | |
CN109492014A (zh) | 一种数据库模型包创建方法、装置及设备 | |
CN101727473A (zh) | 因特网上监视与跟踪视频的方法和*** | |
CN107766374A (zh) | 一种海量小文件存储读取的优化方法和*** | |
CN106339408A (zh) | 数据同步方法、数据同步装置和服务器 | |
CN105224527A (zh) | 适用于多种目的表更新方式的通用etl方法 | |
CN105677751A (zh) | 关系型数据库的调度方法及*** | |
CN108958653A (zh) | 一种基于底层聚合文件的空间回收方法、***及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190319 |