高手都这么设计数据库

只要你在做后端,数据库这块就绕不过去,根据业务和系统架构进行表设计也是我们经常需要做的工作,但是没有好的工具,对于一些数据表比较多大系统来说,很难维护,同样为了大家能有好的数据库设计体验,我今天简单谈谈如何使用数据库设计工具,看看它能解决我们日常中的哪些问题

目录结构

软件安装

创建对应工程

连接数据库实例并同步表结构

设计表结构

提交表结构到数据库

软件安装

安装这块没什么好说的,略过。大家自行百度即可。

创建对应工程

打开软件,创建Model

选择 ,DBMS选择

点击确认后的界面长这样:

连接数据库实例并同步表结构

作为一个数据库表设计工具,我们想在工具里更改或者创建表都能实时同步到我们的数据库实例,也有一个需求是在原来的数据库模型基础上修改或添加。

新建数据库

新建表user

然后点击数据库连接

将数据库模型同步到软件中

勾选我们需要同步过来的表

点击Ok

可以看到之前数据库的表都可以同步到软件当中了。

设计表结构

上一步我们通过软件连接了mysql数据库并同步表结构,那么我们可以开始进行表结构设计了,当然不能盲目的设计,建议大家参考数据库设计三大范式。

什么是三大范式:

第一范式:

1、每一列属性都是不可再分的属性值,确保每一列的原子性

2、两列的属性相近或相似或一样,尽量合并属性一样的列,确保不产生冗余数据。

求,否则,将有很多基本操作在这样的关系模式中实现不了。

第二范式:每一行的数据只能与其中一列相关,即一行数据只做一件事。只要数据列中出现数据重复,就要把表拆分开来。

第三范式:数据不能存在传递关系,即没个属性都跟主键有直接关系而不是间接关系。像:a-->b-->c 属性之间含有这样的关系,是不符合第三范式的。

这里演示通过软件进行表创建。点击右侧栏的Table按钮,在项目中空白处单击即可。我们可以基于这个空白表进行可视化设计。

假设我们创建一个用户扩展表,可简单设计如下

提交表结构到数据库

重头戏来了,我们当然希望我们在软件中设计的数据库表结构很方便的同步到数据库里面去,可以进行如下操作。

点击Database->Geberate Database

选择菜单栏Selection,勾选需要同步到数据库的表,点击确定

这时会有一个展示sql的界面

从图中sql可以看到,在同步之前会先删除相关表再进行创建,所以会清数据,这点大家需要注意下。

点击Run,执行成功。此时回过头去看我们的数据库,表结构都生成完毕,大功告成!

总结

数据库设计适合才是王道,如果你有更好的方式或工具也欢迎推荐,本文只是抛砖引玉,讲解不是特别深入,比如更多的属性设置和个性化设置大家可自行探索。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181219A07A1700?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券