开发者社区> 悟静> 正文

马列矛盾理论告诉我们:数据库设计就是‘主体’和‘关系’的设计

简介: MySql 官方工具 WorkBench 设计数据库要点分析 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循“署名-非商业用途-保持一致”创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。
+关注继续查看

MySql 官方工具 WorkBench 设计数据库要点分析

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)

本文遵循“署名-非商业用途-保持一致”创作公用协议

转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino否则,出自本博客的文章拒绝转载或再转载,谢谢合作。



巧妇难为无米之炊,研究这些内容,我们得先有 MySql 和 WorkBench,下面就在 www.gfsoso.com 搜一下 mysql 关键字吧!

第一项就是

MySQL :: MySQL Community Downloads


幸好 MySql 落入 Oracle 的怀抱之后,还能一如即往地弄个社区版,这也看得出社区对开源的贡献力量有多么大。

废话不多说,下面贴出来 MySql 和 WorkBench 的下载链接,当然了,还是得继续点下去的,要有心理准备噢,很慢很慢地:

  • MySQL Community Server (GPL)
    (Current Generally Available Release: 5.6.21)
    MySQL Community Server is the world's most popular open source database.DOWNLOAD
  • MySQL Workbench (GPL)
    (Current Generally Available Release: 6.2.4)
    MySQL Workbench is a next-generation visual database design application that can be used to efficiently design, manage and document database schemata. It is available as both, open source and commercial editions.DOWNLOAD
晚上休息时待续。。。

MySql 的搜狐镜像站:

http://mirrors.sohu.com/mysql/

Android 的东软镜像站:

http://mirrors.neusoft.edu.cn/android/repository/

这个镜像站是从 这里 翻出来的,一个一个地翻的确费了不少事儿。

由此也明白了东软镜像代理的来由:

你可以把 mirrors.neusoft.edu.cn 作为代理,指定给 Android SDK Manager 的代理,那下载速度就可想而知了,不信那就试试:


好像没有办公室快,4M 联通宽带要 22分钟更新完 4.4.2 的 SDK 包,办公室的电信光纤,早上没上班时,更新同样的 SDK 只需要不到 10 分钟。

---------------------


以下一大堆图,还没来得及整理,大致过程中截到的图都有了

可以这么说,数据库设计与数据库管理是两个层次上的事儿,

知道咋建表,但并不一定知道咋设计,如有哪些字段、主键、外键、索引等等,这些都要考虑实际业务需求。


不过,总结起来,数据库设计就涉及到两个对象

1、实体对象,如人、商店、货车;

2、关系对象,如人顾了货车拉货,这是一个顾佣关系;人从商店买东西,这是一个买卖关系;货车给商店送化,这是一个服务关系;

                        如人有档案,档案其实是一个实体,但它属于某个人,这种关系,不体现在表,而是一个外键字段的增加;


关系对象又分为:静态依存关系与动态作用关系;

静态依存关系,如学生档案,依存于学生存在;

动态作用关系,如顾客买商店的东西;

有些可以是静态关系,也可以是动态关系,比如,学生上学,学生属于这个学校,是一种静态关系,而学生到这所学校就读,算是一种动态关系;

还有一种,就是课外学校,一个学生可以在多所课外学校学习,而一所课外学校,可以有很多学生,这是一种交叉的作用关系,而非依存关系;

                        

实体用表存储实体的特性;

关系也用表存储关系的特性,以及关系的双方的载明;


除了这些,数据库设计最主要的东西,还有什么?!可能都是边边角角不常用的了吧,即或也很重要!。。。

上面插了一段,接下来转入正题,这周末也只能写点儿这个了,至于 MyBatis 和 MyBatis-Spring 还需要进一步研究细节,以便能说得清楚,虽然已经能正常构建出可用的环境了。

Mysql Workbench 上面有镜像站,自个儿下载安装吧,无论是 Mac 版,还是 Windows 版,或者 Linux 版(好像 Unix 没人用了?!),

基本差不多,我这里以 Mac 版来描述说明:

1、新建设计模型


点按那个 New Model ,如下:


我们暂时只关于中间部分: