索引
索引只在物理模型中维护,用于描述表或视图上的数据库索引对象,并在生成 DDL 时输出创建语句。字段设计见属性/字段操作,索引与关系的对应规则见下节。
打开索引编辑器
- 在画布中右键点击表或视图。
- 选择编辑索引,打开索引编辑器。
- 选择索引类型新建索引,或选择已有索引后删除。
- 选择已有索引,在下方的成员字段列表中维护索引字段。
- 确定保存,索引随模型一同保存。
图示索引编辑器:上方按索引类型新建索引,下方成员字段列表维护索引字段及其顺序。
索引类型与成员字段
| 项目 | 说明 | 检查点 |
|---|---|---|
| 索引名称 | 索引在数据库中的名称 | 与目标数据库命名规则一致,避免与已有索引重名 |
| 索引类型 | 新建索引时选择的种类,例如主键索引、外键索引、唯一索引等 | 类型决定 DDL 中的语句形式 |
| 是否唯一 | 索引是否要求取值唯一 | 与业务约束一致,误设为唯一会导致数据写入失败 |
| 成员字段 | 组成索引的字段及其顺序 | 顺序影响索引可用性,按查询条件的前缀顺序排列 |
成员字段的顺序按设计意图排列,调整字段顺序后应重新核对依赖该索引的关系和查询场景。
关系自动生成的索引
在表之间创建标识关系或非标识关系时,系统会自动在表上新建主键索引和外键索引。
| 关系类型 | 子表中的字段处理 | 自动生成的索引 |
|---|---|---|
| 标识关系 | 子表主键包含父表主键;缺少同名字段时自动创建并设为主键 | 主键索引,包含父表主键字段 |
| 非标识关系 | 父子表之间无主键包含关系;缺少同名字段时自动创建并设为外键 | 外键索引 |
自动生成的索引用于表达物理约束,不应随意删除;需要调整时先确认关系是否仍然需要该索引。删除关系后对应的自动索引也要一并核对,避免留下无用对象。

