表空间
对于支持表空间的数据库,可以在模型中维护表空间,并为每张表指定所属的表空间。表空间属于数据库物理属性,只在物理模型中维护,生成 DDL 时输出对应的存储子句。
维护表空间
- 在模型树中右键点击表空间节点,选择属性,打开表空间编辑器。
- 新建表空间并填写名称等属性。
- 编辑已有表空间,或选择后删除不再使用的表空间。
- 确定保存,在模型树中核对表空间清单。
为表指定表空间
在实体/表编辑器中针对表指定相应的表空间。表空间与 Schema、分区共同构成表的物理存储定义:
| 物理属性 | 作用 | 维护位置 |
|---|---|---|
| Schema | 表所属的数据库命名空间 | Schema 编辑器 |
| 表空间 | 表数据的存储位置 | 表空间编辑器、表编辑器 |
| 分区 | 表数据的分区方式与边界值 | 实体/表属性中的分区菜单 |
检查点
| 检查项 | 说明 |
|---|---|
| 表空间名称与目标数据库一致 | 名称与数据库现有表空间不匹配时,DDL 执行会失败 |
| 是否所有表都已指定 | 未指定的表按数据库默认表空间处理,可能与设计预期不同 |
| 删除前置条件 | 删除表空间前确认没有表仍引用它 |
| 目标数据库是否支持 | 数据库不支持表空间时不会提供相关选项,目标数据库类型见模型属性 |
| 是否需要输出到脚本 | 表空间语句由 DDL 生成配置的对象过滤和类型过滤决定,见生成 DDL |
常见问题
| 现象 | 排查顺序 |
|---|---|
| 模型树中没有表空间节点 | 当前模型是否为物理模型;目标数据库是否支持表空间 |
| 表未指定表空间 | 在实体/表编辑器中逐表确认,未指定的表按数据库默认表空间处理 |
| DDL 执行时表空间不存在 | 核对目标数据库的表空间名称,模型中的名称需与数据库实际对象一致 |
