1.概念

数据库设计就是根据业务系统的具体需求,结合我们所选用的DBMS(数据库管理系统),为这个业务系统构造出最优的数据存储模型。并建立数据库中的表结构以及表与表之间的关联关系的过程。使之能有效的对应用系统中的数据进行存储,并可以高效的对已存储的数据进行访问。

关系型数据库系统:MySQL;Oracle;SQLServer;PgSql

NoSQL系统:Mongo;Memcache;Redis

好的数据库:减少数据冗余;避免数据维护异常;节约存储结构;高效的访问

2.数据库设计的步骤:

  • 需求分析(数据是什么;数据具有哪些属性;数据与属性的特点是什么)
  • 逻辑分析(使用ER图对数据库进行逻辑建模,不需要考虑我们所选用的数据库管理系统)
  • 物理设计(根据数据库自身的特点把逻辑设计转换为物理设计)
  • 维护设计(1.对新的需求进行建表;2.索引优化;3.大表拆分)

2.1需求分析

了解系统中需要存储的数据;了解数据的存储特点;了解数据的生命周期

需要清楚的问题:

A.实体对实体之间的关系(1对1;1对多;多对多)

B.实体所包含的属性有什么

C.那些属性或属性的组合可以唯一标识一个实体

实例演示:

以一个小型的电子商务网站为例,在这个电子商务网站的系统中包括了几个核心模块:用户模块,商品模块,订单模块,购物车模块,供应商模块。

  • 用户模块:用于记录注册用户信息

包括属性:用户名,密码,电话,邮箱,身份证号,地址,姓名,昵称.....

可唯一标识属性:用户名,身份证号,电话

存储特点:随系统上线时间的增长,需要永久存储

  • 商品模块:用于记录网站中说销售的商品信息

包括属性:商品编码,商品名称,商品描述,商品品类,供货商名称,重量,有效期,价格......

可唯一标识属性:商品编码,(商品名称,供货商名称)

存储特点:对于下线商品可以归档存储(不能直接删除,可能跟订单有关)

  • 订单模块:用于用户订购商品的信息

包括属性:订单号,用户姓名,用户电话,收货地址,商品编号,商品名称,数量,价格,订单状态,支付状态.....

可唯一标识属性:订单号

存储特点:永久存储(分表,分库存储)

  • 购物车模块:用于保存用户购物时选的商品

包括属性:用户名,商品编号,商品名称,商品价格,加入时间,商品数量......

可唯一标识属性:(用户名,商品编号,加入时间),购物车编号

存储特点:不用永久存储(设置归档,清理规则)

  • 供应商模块:用于保存供应商信息

包括属性:供应商编号,供应商名称,联系人,电话,营业执照,供应商品.....

可唯一标识属性:供应商编号,营业执照

存储特点:永久存储

ER图

逻辑设计:

1.将需求转化为数据库的逻辑模型

2.通过ER图的形式对逻辑模型进行展示

3.同所选用的具体的DBMS系统无关

常用的DBMS系统:

商业数据库:Oracle;SQLServer------->两种数据库适用于企业级项目

开源数据库:MySQL;PgSQL---------->两种数据库适用于互联网项目

数据库设计(有实例)相关推荐

  1. 数据库设计范式实例解析

    设计范式(范式,数据库设计范式,数据库的设计范式)是符合某一种级别的关系模式的集合.构造数据库必须遵循一定的规则.在关系数据库中,这种规则就是范式.关系数据库中的关系必须满足一定的要求,即满足不同的范 ...

  2. MYSQL数据库设计和数据库设计实例(一)

    数据库设计(database design):数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效的存储和管理要求,满足各种用户 ...

  3. (转载)简洁、明晰!数据库设计三大范式应用实例剖析

    (转载http://bbs.database.ccidnet.com/read.php?tid=325895) 简洁.明晰!数据库设计三大范式应用实例剖析 引言OL~eR{q   ;iC,$vZ 0} ...

  4. 超大型Oracle数据库设计实例

    超大型系统的特点为: 1.处理的用户数一般都超过百万,有的还超过千万,数据库的数据量一般超过1TB: 2.系统必须提供实时响应功能,系统需不停机运行,要求系统有很高的可用性及可扩展性. 这篇是笔者针对 ...

  5. 篮球赛场数据统计系统数据库设计实例

    篮球赛场数据统计系统数据库设计实例 研究内容(篮球赛场数据统计系统)    1)比赛前对球队.球员各项基本信息的录入功能: 2)比赛时对进球得分.各种进球类型以及裁判评判情况等数据和信息的记录功能: ...

  6. 世界一级方程式锦标赛_Formula one小型查询数据库设计实例

    世界一级方程式锦标赛_Formula one小型查询数据库设计实例 2022年一级方程式锦标赛小型数据库设计 0.数据库系统基础 0.1数据库系统基础概述 0.2数据库服务器名称 1.数据库初始化 1 ...

  7. 数据库设计三大范式应用实例剖析(转载)

    引言 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的.结构明晰的,同时,不会发生插入(insert).删除(delete)和更新(update)操作异常.反之则是乱七八糟, ...

  8. 根据实例说数据库设计(一)—— 人员管理

    说在前面 可能您会问,树的系列还差第三篇没有写呢,怎么就又说数据库设计了?因为如果写第三篇的话,那么就涉及到了权限,而权限里面又涉及到了人员,这些信息都是存放在表里面的,所以就只好先说数据库设计了. ...

  9. 数据库设计三大范式应用实例剖析

    引言 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的.结构明晰的,同时,不会发生插入(insert).删除(delete)和更新(update)操作异常.反之则是乱七八糟, ...

  10. 数据库设计三大范式应用实例剖析(讲得比较清楚)

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 转贴地址 ...

最新文章

  1. VMware虚拟机 取消 简易安装
  2. 面试谈薪,被 HR 压价,怎么办?
  3. *** Procedure 存储过程 ***
  4. shell基础二十篇 一些笔记
  5. 【Docker】日常记录
  6. 开发过程中的常见问题
  7. java将数字转化为类似10W+的字符串格式
  8. IOS开发之Autolayout——“Content Compression Resistance”和“Content Hugging”
  9. 【CF1394B】Boboniu Walks on Graph【图论】【集合哈希】
  10. 2021牛客第一场 I. Increasing Subsequence-前缀和优化dp
  11. c语言中变量的值十进制,C语言中介绍的整型变量 即十进制 十六进制什么的是什么意思 能具体解释一下吗 还有换算什么的 谢谢...
  12. Vivado提高综合和实现的速度
  13. addition过程 sgnb_5G NR接入优化问题排查思路
  14. 再也不怕重装eclipse! 让你的eclipse插件只下载一次
  15. 小程序首次获选世界互联网领先科技成果
  16. 微型计算机接口技术实训心得,微机原理与接口技术实验总结.doc
  17. vue中使用kindeditor编辑器_vue集成kindeditor富文本
  18. JDK成年了,JDK18版本发布,走进JDK18新特性
  19. jquery datatable 前端分页和后端分页例子
  20. html盒子里的图片居中,文本在盒子中水平、垂直居中(图片与文本居中)、多行文本垂直居中...

热门文章

  1. IE9如何降级返回IE8
  2. win7系统修复工具_系统哥教你如何修复win7启动引导的方法
  3. 如何使用计算机蓝牙设备管理器,电脑蓝牙bluetooth怎么使用_win7蓝牙bluetooth使用教程-系统城...
  4. 嵌入式系统开发-麦子学院(2)——开发环境的搭建
  5. CAN协议 J1939
  6. sht21 c语言程序,湿度传感器SHT21示例代码-SampleCodeforSHT21.PDF
  7. 机器学习数学基础- gradient descent算法(上)
  8. windows如何安装pycharm2022版本?pycharm如何安装汉化语言包{www.423zy.com}
  9. 2010.11.03_ximo_过VMP加壳程序的自效验(vmp 2.06)
  10. 制作 MacOS 系统 ISO 镜像