
# 数据模型
数据模型定义系统的关键数据设计，包括关键数据结构设计、数据流，以及数据所有权等。
#### 元素介绍
表1数据模型元素介绍 
| 元素名            | 图标                                                                                                       | 含义                                                                                  |
|:---|:---|:---|
| Entity         | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002546945275.png "点击放大") | 实体，该实体建立了一种和数据库表的映射关系。                                                              |
| Attribute      | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002546865273.png "点击放大") | 属性。                                                                                 |
| Class          | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002515465354.png "点击放大") | 类，是对象的集合，展示了对象的结构以及与系统的交互行为。                                                        |
| Database       | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002515305440.png "点击放大") | 数据库。                                                                                |
| Composition    | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002546945277.png "点击放大") | 组合，是整体与部分的关系，但部分不能离开整体而单独存在。                                                        |
| Aggregation    | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002546865275.png "点击放大") | 聚合，是整体与部分的关系，且部分可以离开整体而单独存在。                                                        |
| Realization    | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002515465356.png "点击放大") | 实现，是一种类与接口的关系，表示类是接口所有特征和行为的实现。                                                     |
| Dependency     | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002515305442.png "点击放大") | 依赖，是一种使用的关系，即一个类的实现需要另一个类的协助。                                                       |
| Usage          | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002546945279.png "点击放大") | 使用，是一种使用的关系，表明一个模块在运行的时候，需要使用另外一个模块。                                                |
| Association    | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002546865277.png "点击放大") | 关联，是一种拥有的关系，它使一个类知道另一个类的属性和方法。                                                      |
| Generalization | ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002515465358.png "点击放大") | 泛化，是一种继承关系，一个类（通用元素）的所有信息（属性或操作）能被另一个类（具体元素）继承，继承某个类的类中不仅可以有属于自己的信息，而且还拥有了被继承类中的信息。 |
   
#### 建模示例
从工具箱中拖入Database、Entity、Attribute元素到数据模型图中，如下图所示：
在数据模型中构建数据对象、实体对象、及实体对象包含的属性对象的结构关系，如果数据模型图对象过多，图形比较复杂时，可以参考逻辑模型中的分层结构，创建多个数据模型，分解来绘制各实体对象间的关系。
![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002003494904.png "点击放大")
#### 连线关系
- 组合关系（Composition） 表示一种强拥有关系，整体与部分的生命周期相同，部分不能脱离整体存在。
  组合关系用带实心菱形箭头的实线表示。
  ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002144827498.png "点击放大")
  
 
- 聚合关系（Aggregation） 表示一种弱拥有关系，整体与部分可以分离，部分可以属于多个整体。
  聚合关系用带空心菱形箭头的实线表示。
  ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002170539525.png "点击放大")
  
- 实现关系（Realization） 表示一个类实现了一个或多个接口的功能。
  实现关系是用带空心三角箭头的虚线表示，箭头指向接口。
  示例中Business类是由Owner和Employee组合实现的类。
  ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002135128064.png "点击放大")
  
- 依赖关系（Dependency） 表示一个类依赖于另一个类的定义，但这种依赖是临时的。
  依赖关系用虚线箭头表示，箭头指向被依赖的类。
  ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002180305217.png "点击放大")
  
- 使用关系（Usage） 表示一个元素需要另一个元素才能完全实现或运行。
  使用关系用带箭头的虚线表示。
  示例中显示Order类需要LineItem才能完全实现。
  ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002134902110.png "点击放大")
  
- 关联关系（Association） 类与类之间最常用的一种关系，它是一种结构化关系，用于表示一类对象与另一类对象之间有联系。
  关联关系用实线连接有关联的对象所对应的类。
  ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002144837082.png "点击放大")
  
- 泛化关系（Generalization） 表示类与类之间、接口与接口之间的继承关系，或类对接口的实现关系。
  泛化关系用带空心三角箭头的实线表示，箭头指向父类（或接口）。
  ![](https://support.huaweicloud.com/usermanual-codeartsmodeling/zh-cn_image_0000002222043186.png "点击放大")
  
 
