需求分析是做项目中的极为重要的一环,而作为整个项目中的'血液'--数据,更是重中之重。viso,workbench,phpmyadmin等软件可以帮我们更好的处理数据分析问题。

ER图



E-R方法是“实体-联系方法”(Entity-Relationship Approach)的简称。它是描述现实世界概念结构模型的有效方法。是表示概念模型的一种方式,用矩形表示实体型,矩形框内写明实体名;用椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来,属性如果有下划线的话,就表示该属性为主键属性;用菱形表示实体型之间的联系,在菱形框内写明联系名(实体和实体之间的关系),并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)

实体之间联系

联系可分为以下 3 种类型:

(1) 一对一联系(1 ∶1)

例如,一个部门有一个经理,而每个经理只在一个部门任职,则部门与经理的联系是一对一的。

(2) 一对多联系(1 ∶N)

例如,某校教师与课程之间存在一对多的联系“教”,即每位教师可以教多门课程,但是每门课程只能由一位教师来教

(3) 多对多联系(M ∶N)

例如,图1表示学生与课程间的联系(“学”)是多对多的,即一个学生可以学多门课程,而每门课程可以有多个学生来学。联系也可能有属性。例如,学生“ 学” 某门课程所取得的成绩,既不是学生的属性也不是课程的属性。由于“成绩” 既依赖于某名特定的学生又依赖于某门特定的课程,所以它是学生与课程之间的联系“学”的属性。

推荐使 亿图图示专家或viso 来画ER图

数据建模

使用workbench软件可以很方便的建立数据模型,当然workbench不仅仅可以用来建模,还可以用来管理数据库.但通常我们只用来建模,管理数据库用navcate等更为方便的工具;

软件很简单,只不过是英文版本的,貌似市面上还没有出现中文版的,其实软件能用英文版的尽量使用英文版的

简单的图示使用说明

数据字典

在使用数据字典前,要保证sql的注释务必要详情

CREATE TABLE `sc_role` (
`id` smallint(6) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL DEFAULT '角色名称',
`parentid` smallint(6) NOT NULL COMMENT '父角色ID',
`status` tinyint(1) unsigned NOT NULL COMMENT '状态',
`remark` varchar(255) NOT NULL COMMENT '备注',
`create_time` int(11) unsigned NOT NULL COMMENT '创建时间',
`update_time` int(11) unsigned NOT NULL COMMENT '更新时间',
`listorder` int(3) NOT NULL DEFAULT '0' COMMENT '排序字段',
PRIMARY KEY (`id`),
KEY `parentId` (`parentid`),
KEY `status` (`status`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='角色信息列表';

然后可以通过phpmyadmin来导出数据字典

phpAdmin是一个用php语言写的B/S架构,其配置文件在其应用的根目录config.inc.php;在该文件中可以设置数据库链接的一些信息

ER图,数据模型,数据字典是对分析数据结构和维护数据库非常有帮助的,千万不要怕麻烦

最新文章

  1. ajax-服务器响应
  2. (七)中介者模式-C++实现
  3. IDEA 中 显示 *.properties 为中文
  4. HDU 2689Sort it 树状数组 逆序对
  5. es配置说明
  6. jsp页面img利用tomcat配置访问服务器绝对路径显示图片
  7. 【原创】VB6.0应用程序安装包的生成(Setup Factory 9.0制作安装包的方法)
  8. SQL SERVER 之 填充因子
  9. wpa_supplicant使用笔记-wpa_cli iwconfig
  10. singleTask TaskAffinity allowTaskReparenting
  11. hibernate 事务的隔离级别 5.1
  12. C语言,const
  13. Spring 日期时间处理
  14. Spring Boot实战笔记(八)-- Spring高级话题(条件注解@Conditional)
  15. 向Oracle数据库插入中文乱码解决方法
  16. xamarin forms常用的布局StackLayout详解
  17. Running Spark Streaming Jobs on a Kerberos-Enabled Cluster
  18. mybatis逆向工程(MyBatis Generator)
  19. BZOJ3028: 食物(生成函数)
  20. java----java垃圾回收算法

热门文章

  1. java新手笔记31 集合实现类
  2. Apache 安装与配置
  3. Bootstrap学习笔记(二) 表单
  4. [设计模式]Netd中的命令设计模式
  5. ObjectInput read方法的坑
  6. web网页的表单排版利器--960css
  7. HTML5新增标签的汇总与详解
  8. laravel方法汇总详解
  9. 别让emacs损伤你的小母指
  10. 再次学习C++类之构造函数