应用程序有多个表,每个表都链接到一个特定的域。
一个好的做法是按模块组织数据库,与这些领域保持一致。
概念
- 模块化数据库:数据库分为代表系统特定区域的模块。
- 架构:数据库中的对象集,以逻辑方式组织。
- 架构对象:属于架构一部分的表、视图、触发器和函数。
模块和模式之间的等效性
- 表示模块的适当选项是使用模式。
- 每个模块都由数据库中的模式表示。
- 每个模式都包含自己的对象,例如视图、表、触发器和函数。
- 构建复杂查询时,考虑表所在的架构至关重要。
创作步骤
- 创建数据库。
- 配置初始设置。
- 创建必要的模式。
- 在每个模式中创建表、视图、触发器和函数。
- 如有必要,为每个模式定义特定的访问规则。
初始化
- 从每个目录读取 SQL 脚本。
- 运行前检查脚本是否存在。
- 以正确的顺序运行脚本。
- 在事务中执行脚本。
- 打开应用程序时启动脚本。
- 记录进度和错误日志。
创建模式的优点
- 组织
- 数据库模块化
- 职责分离
- 导航性
- 代码可重用性
- 增强安全性
- 改善协作
挑战
- 咨询的复杂性。
- 代码中的冗长。
- 保持模块之间的一致性
- 命名的标准化和一致性。
- 团队训练。
源代码:
- https://github.com/ortizdavid/golang-modular-software
领英:https://www.linkedin.com/in/ortiz-david
以上是模块化数据库的设计的详细内容。更多信息请关注PHP中文网其他相关文章!