mysql设计的步骤_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设计的步骤_mysql笔记8_数据库设计步骤相关推荐
- 考试系统mysql数据库设计_《在线考试系统数据库设计与实现》.doc
网上测试系统 PAGE28 / NUMPAGES29 西南财经大学 Southwestern University of Finance and Economics 课程实验报告 课程名称: 数据库 ...
- MySql数据库主键外键与数据库设计
MySql数据库主键外键与数据库设计 首先要指出的: 列.字段.属性是一个概念 行.记录.元组是一个概念 MySQL数据库CONSTRAINT约束:非空约束,唯一约束,主键约束,外键约束 show c ...
- 熟悉mysql数据库设计和性能优化_MySQL性能优化学习笔记-(1)数据库设计
一.数据库设计 1.数据类型优缺点分析 数据类型的选择要遵循的总体原则 更小的通常更好 一般情况下,应该尽量选择使用可以正确存储数据的最小数据类型.更小的数据类型通常更快,因为它们站用更小的磁盘.内存 ...
- mysql 定期清理表数据_mysql 定期清理表数据库
zabbix数据库备份整理 zabbix数据库备份整理 zabbix数据库备份整理 zabbix的所有操作都是存在数据库里,在数据库里都会有对应的表,所以对zabbix备份,只需备份数据库就行了. 采 ...
- Linux下导出MySQL为SQL文件_MySQL导入导出.sql文件步骤
MySQL导入导出.sql文件步骤如下: 一.MySQL的命令行模式的设置: 桌面->我的电脑->属性->环境变量->新建-> PATH=":path\mysq ...
- mysql添加自团_Mysql入门基础 数据库创建篇
1.创建数据表---基础(高手跳过) 正统方法:create [TEMPORARY] table 表名 [if not exists] (创建的列项定义) [表的选项] [分区的选项];#正统的创建方 ...
- 数据库课程设计测试部分_实用的数据库设计,第1部分
数据库课程设计测试部分 在本系列文章中,我将讨论一些特别有用的常规最佳实践. 其中没有任何内容是特定于任何供应商的产品的,因此,无论使用哪种数据库实现,所有内容都应适用. 在本文的第一部分中,我想讨论 ...
- mysql 树形结构_MySQL 树形结构数据库设计 | 剑花烟雨江南
程序设计过程中,我们常常用树形结构来表示某些数据的关联关系,如企业的部门上下级.电商平台的商品分类等等,通常而言,我们需要通过数据库来完成数据的持久化.由于关系型数据库没有一个很好的树形结构解决方案, ...
- mysql 免安装初始化_mysql免安装版配置步骤详解分享
1.准备工作 下载mysql的最新免安装版本mysql-noinstall-5.1.53-win32.zip,解压缩到相关目录,如:d:\\ mysql-noinstall-5.1.53-win32. ...
最新文章
- SVN删除服务器端项目文件
- 骑士周游算法 c语言_C语言经典算法04--骑士走棋盘(骑士旅游:Knight tour)
- 对C#面向对象三大特性的一点总结
- 如何用 TypeScript 代码区分一个 button 动作是由键盘还是鼠标触发的
- MSP432P401R TI Drivers 库函数学习笔记(三)认识任务的创建及图形化配置
- How to set a timeout with AFNetworking
- 跟我学spring3 电子书下载(完)
- 【翻译】MSIL 教程(一)
- 根据时间戳生成编号_使用雪花算法生成流水号!
- hdu 1045 Fire Net
- mysql数据库插入数据错误Error Code: 1118 - Row size too large ( 8126)
- PCIE 转 spi 总线
- Android Studio Keymap
- webrtc代码走读二十一(采集视频旋转功能)
- Eclipse打印Java的char默认值,出现方框原因
- 低碳世界杂志低碳世界杂志社低碳世界编辑部2022年第7期目录
- html 在框架里弹出页面,iframe弹出新窗口 iframe页面打开新窗口问题
- WEBBASIC Unit02 CSS 概述 、 CSS 语法 、 CSS 选择器 、 CSS声明
- ansys 服务器无响应,ANSYS出现的各种错误及解决方法
- 【Web技术】前端水印实现方案