前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SaaS-多租户SaaS平台的数据库方案(数据库设计与建模)

SaaS-多租户SaaS平台的数据库方案(数据库设计与建模)

作者头像
cwl_java
发布2020-01-02 11:38:39
3.3K0
发布2020-01-02 11:38:39
举报
文章被收录于专栏:cwl_Javacwl_Java

2 数据库设计与建模

2.1 数据库设计的三范式

三范式:

  1. 第一范式(1NF):确保每一列的原子性(做到每列不可拆分)
  2. 第二范式(2NF):在第一范式的基础上,非主字段必须依赖于主字段(一个表只做一件事)
  3. 第三范式(3NF):在第二范式的基础上,消除传递依赖

反三范式:

反三范式是基于第三范式所调整的,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。

2.2 数据库建模

了解了数据的设计思想,那对于数据库表的表设计应该怎么做呢?答案是数据库建模

数据库建模:在设计数据库时,对现实世界进行分析、抽象、并从中找出内在联系,进而确定数据库的结构。它主要包括两部分内容:确定最基本的数据结构;对约束建模。

2.2.1 建模工具

对于数据模型的建模,最有名的要数PowerDesigner,PowerDesigner是在中国软件公司中非常有名的,其易用性、功能、对流行技术框架的支持、以及它的模型库的管理理念,都深受设计师们喜欢。他的优势在于:不用在使用create table等语句创建表结构,数据库设计人员只关注如何进行数据建模即可,将来的数据库语句,可以自动生成

2.2.2 使用pd建模

  1. 选择新建数据库模型 打开PowerDesigner,文件->建立新模型->model types(选择类型)->Physical DataModel(物理模型)
在这里插入图片描述
在这里插入图片描述
  1. 控制面板
在这里插入图片描述
在这里插入图片描述
  1. 创建数据库表 点即面板按钮中的创建数据库按钮创建数据库模型
在这里插入图片描述
在这里插入图片描述

切换columns标签,可以对表中的所有字段进行配置

在这里插入图片描述
在这里插入图片描述

如果基于传统的数据库设计中存在外键则可以使用面版中的Reference配置多个表之间的关联关系,效果如下图

在这里插入图片描述
在这里插入图片描述
  1. 导出sql 菜单->数据库(database)->生成数据库表结构(Generate Database)
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2 数据库设计与建模
    • 2.1 数据库设计的三范式
      • 三范式:
      • 反三范式:
    • 2.2 数据库建模
      • 2.2.1 建模工具
      • 2.2.2 使用pd建模
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档