mysql笔记8_数据库设计步骤

step1:

  收集信息,与谈系统有关的人员进行交流、座谈,充分了解数据库需要完成的任务。

  示例:blog系统

  基本功能:发表和编辑文章,多用户支持,全文检索,RSS支持,图片收藏,管理站内短消息。

step2:

  标识对象(实体Entity)

  标识数据库要管理的关键对象或实体。

  实体一般是名词:

  博主账号:发表和管理文章、图片管理。

  文章类别

  文章

  文章回复

  图片分类

  图片

  连接分类

  连接

  短消息

step3:

  标识每个实体的属性

      E-R图(Entity-Relationship)

  |     符号     |      含义                      |

  |   矩形     |   实体,一般是名词        |

  |   椭圆     |   属性,一般是名词        |

  |     菱形     |   关系,一般是动词        |

step4:

  将E-R图转换为对应的表

  step1.将各实体转换成各对应的表。

  step2.将各属性转换成表对应的列。

  step3.标识每个表的主键列。

      需要注意:没有主键的表要添加ID编号列作为主键。它没有实际含义。

  step4.在表之间建立主外键,体现实体间的映射关系。

      一对多关系用主外键关联。

        多对多关系增加一个中间表处理关联关系。

数据库设计的3范式:

  第一范式(1NF):在关系模式中每一个具体关系中,必须要有主键,并且每个属性值都是不可再分的最小数据单位。则称为第一范式关系。

  第二范式(2NF):如果关系模式中的所有非主属性都完全依赖于主关键字,则称为第二范式。

  第三范式(3NF):关系模式中的非主关键字不能依赖其他非主关键字,即非主关键字之间不能有函数(传递)依赖关系,则称为第三范式。

隐患:

  数据冗余

  更新异常

  插入异常

  删除异常

mysql笔记8_数据库设计步骤

时间: 2024-10-25 11:26:22

mysql笔记8_数据库设计步骤的相关文章

SQL笔记 --- 数据库设计步骤(转)

目录 总体设计过程需求分析概念结构设计逻辑结构设计数据库物理设计数据库实施数据库运行和维护 总体设计过程 数据库设计步骤: 设计描述: 数据库设计不同阶段形成的数据库各级模式: 数据库设计的特点: 需求分析 分析和表达用户需求: 首先把任何一个系统都抽象为: 分解处理功能和数据: 分解处理功能: 将处理功能的具体内容分解为若干子功能 分解数据: 处理功能逐步分解同时,逐级分解所用数据,形成若干层次的数据流图 表达方法: 处理逻辑:用判定表或判定树来描述 数据:用数据字典来描述 将分析结果再次提交

数据库设计步骤

SQL笔记 --- 数据库设计步骤 转自:http://www.cnblogs.com/kzloser/archive/2012/07/13/2589652.html#a2 目录 总体设计过程需求分析概念结构设计逻辑结构设计数据库物理设计数据库实施数据库运行和维护 总体设计过程 数据库设计步骤: 设计描述: 数据库设计不同阶段形成的数据库各级模式: 数据库设计的特点: 需求分析 分析和表达用户需求: 首先把任何一个系统都抽象为: 分解处理功能和数据: 分解处理功能: 将处理功能的具体内容分解为若

mysql笔记1_数据库发展史

数据库发展史 萌芽阶段--文件系统 初级阶段--第一代数据库:网状模型.层次模型的数据库. 中级阶段--第二代数据库:关系型数据库和结构化查询语句. 高级阶段--第三代数据库:“关系-对象”型数据库. 数据库管理系统(DBMS) SQL(Strutured Query Language)结构化查询语言 DDL(Data Definition Language)数据定义语言 DML(Data Management Language)数据操作语言.mysql自动提交(auto commit),Ora

使用MySQL Workbench进行数据库设计——MySQL Workbench用法总结

转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/48318877 1 简单介绍 MySQL Workbench是一款专为MySQL设计的ER/数据库建模工具.它是著名的数据库设计工具DBDesigner4的继任者. 你能够用MySQL Workbench设计和创建新的数据库图示.建立数据库文档,以及进行复杂的MySQL 迁移. 做数据库设计的话,大家都比較熟悉Power Designer,用得也比較多.但PD有个缺点就是收费,并

mysql学习之数据库设计

1 MySql数据库建模过程 需求分析阶段:分析客户的业务和处理需求 概要设计阶段:设计数据库的E-R模型图,确认需求信息的正确和完整 详细设计阶段:应用三大范式审核数据表结构 代码编写阶段:物理实现数据库,编码实现应用 软件测试阶段:.... 安装部署:... 2设计数据库的步骤1了解需求:与该系统有关人员进行交流.座谈,充分了解用户需求,理解数据库需要完成的任务 2标识实体:标识数据库要管理的关键对象或实体(名词) 3标识每个实体的属性(名词) 4标识实体之间的关系(动词) 在E-R图中,实

SQLServer数据库基础--E-R图、三大范式、数据库设计步骤

本书目标: 了解数据库的基本概念和范式 熟练使用SMSS.T-SQL实现建库.建表.加约束 掌握T-SQL编程,实现功能强大的查询 掌握创建索引.视图,快速访问数据库 熟悉掌握创建存储过程,实现复杂的业务规则 理解触发器的原理,掌握高级的约束 了解SQLServler安全管理 了解数据库的备份与恢复 本章目标: 了解数据库的基本概念 了解数据库设计的步骤 掌握绘制数据库E-R图 理解数据库三大范式 什么是数据库系统? 数据库系统(DBS)是一个以数据库为核心的完整的运行实体, 数据库的组成: 系

【MySQL笔记】数据库的查询

数据库的查询 注:文中 [ ...] 代表该部分可以去掉. 理论基础:对表对象的一组关系运算,即选择(selection).投影(projection)和连接(join) 1.select语句 子语句顺序: select  [distinct | distinctRow | all]    ----distinct关键字会在结果集中去掉重复的值而只保留一个值,否则有重复值 from where group by having order by                           

mysql位运算 数据库设计及应用

1. 基本概念 如果你不知道什么是位运算的话, 那么请你先去看看基础的C语言教程吧. 与运算 a & b , 或运算 a | b , 异或运算 a ^ b , 或者 你也可以将 与运算理解为 + 法 例如 1|2 = 3 (1+2 = 3)1|2|4 = 7 (1+2+4 = 7) 将 异或运算理解为 - 法例如 3^2 = 1 (3-2 = 1)3^1 = 2 (3-1 = 2) 最后将 与运算 作为判断例如 3&2 = 1 (3 = 1 + 2, 由 1和2组成 ,所以判断3&

工作笔记 - 微博数据库设计

users表设计CREATE TABLE `users` ( `UID` int(20) NOT NULL AUTO_INCREMENT, `Username` varchar(20) DEFAULT NULL, `Password` varchar(20) DEFAULT NULL, PRIMARY KEY (`UID`)) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1; fans表设计CREATE TABLE `fans` ( `