数据库设计

原创 2013年12月05日 03:54:51

约束

-) 主键 : 数据唯一且不为空

-) 唯一 : 数据唯一

-) 检查 : 取值范围、格式限制

-) 默认 : 默认值

-) 外键 : 引用主表的主键



数据完整性

-) 实体 : 不能存在完全相同的两条记录

实现方法:设置主键(primary key)、唯一索引、唯一约束

-) 域     :  字段不能违反类型、格式、长度的约定

实现方法:check约束、外键约束(foreign key)、默认约束、非空定义、类型

-) 引用 : 相互联系的表之间,有直接联系的字段必须一致
实现方法:外键约束
-) 自定义 : 自定义的规则
实现方法:存储过程、触发器、规则


三大范式

-) 1st NF : 列的原子性
解读:原子性即不可再分性
检查办法:列值是否还包含多个含义
-) 2nd NF: 表的专一性
解读:一个表只描述一件事情
检查办法:其他列是否依赖主键
-) 3rd NF : 表的原子性
解读:表的原子性即表的不可在分性
检查办法:一个表是否包含了另一个表


数据库设计的六个阶段


1.需求分析 : 根据需求业务分析出数据

-) 目标 : 所有数据全部提取

2.结构设计 : 根据数据绘图、建模,并检查数据完整性

-) 目标: 数据完全符合数据完整性要求

-) 具体步骤

1.标识实体(一般是名词),一条记录就是一个对象
2.标识实体的属性
3.标识实体之间的关系,关系可分为四种:1-1、1-N、N-1、N-N
4.绘制E-R图,可使用visio工具
5.建立关系模式;一个关系的属性名的集合称为关系模式;例如:客人(客人姓名、身份证号、房间号、入住日期、结账日期)
6.转化E-R图为数据库模型图;
-) 将各实体转换为对应的表,将各属性转换为各表对应的列
-) 表示每个表的主键列,没有合适的主键可添加一个ID编号列,例如:入住流水ID
-) 在表之间建立主外键,体现实体之间的映射关系

3.规范化     : 将数据用三大范式审核

目标: 符合完整性并符合三大范式

4.物理设计 : 代码实现

目标:数据库实现

5.数据库实施 :

目标:编写好应用程序访问数据库的接口

6.安装部署

电子商务系统的设计与实现(十一):数据库设计

用户相关  malling_user:前端商城系统的用户,用户名、密码等  malling_user_delivery_address,用户的收获地址,一个用户可以有多个收获地址  malling_a...
  • FansUnion
  • FansUnion
  • 2015年01月02日 19:36
  • 27645

通知、消息、提醒的数据库设计

转载自:http://www.chhua.com/web-note4415
  • zeng_84_long
  • zeng_84_long
  • 2014年09月15日 11:49
  • 5156

超市进销存系统 数据库设计报告

超市进销存系统数据库设计报告 注意:本设计报告省略了需求分析部分、实体说明、联系说明、索引说明等,重点是数据库的实现过程以及sql语言的编写以及其他一些我认为的重点展示 另外:本系统前期主要...
  • qq_26620955
  • qq_26620955
  • 2017年02月25日 18:20
  • 1258

数据库设计原则之三大范式

首先声明,本文为笔记记录。可能不适合作为博客文章,所以如果看着不舒服,还望“另请高明”,(^__^) 嘻嘻……数据库设计的时候有三大范式,现简述如下:第一范式(1NF): 原子性,数据不可再分原则就是...
  • Marksinoberg
  • Marksinoberg
  • 2016年08月14日 17:40
  • 9323

论坛数据库的设计

题目: 一个简单的论坛系统 1:包含下列信息: 2:每天论坛访问量300万左右,更新帖子10万左右。 请给出数据库表结构设计,并结合范式简要说明设计思路。 结合这个题目把...
  • zyq0335
  • zyq0335
  • 2012年05月08日 11:20
  • 12396

经典电商数据库分析构建(一)

传统电商表的分析以及设计(简单版,只包括商家和用户关系处理) 站在用户角度首先有一张用户表,包括用户的基本信息。 然后有一张商品表,包括商品的基本信息;除此之外,应该还有商家的id作为外键,可以帮...
  • wgyscsf
  • wgyscsf
  • 2016年03月16日 20:03
  • 6775

转载的一篇数据库设计的文章

一:原始单据与实体之间的关系   可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原...
  • xinguimeng
  • xinguimeng
  • 2016年03月16日 11:27
  • 521

web开发之即时通讯数据库设计

很多web应用带有站内信的功能,或者类似于新浪微博一样的聊天功能,这篇文章针对即时通讯的数据库设计发表一下自己的看法。 首先说一下需求:设计一个IM系统,实现私信聊天,群聊功能,并可以发送图片或者...
  • Jahnng
  • Jahnng
  • 2015年03月07日 00:05
  • 3935

游戏数据库设计 参考博客

http://www.doc88.com/p-9199096139057.html
  • boshuzhang
  • boshuzhang
  • 2016年04月19日 18:03
  • 790

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

转贴地址:http://blog.csdn.net/songkexin/archive/2007/01/18/1486289.aspx先说几句:        首先作者的劳动果实,让我对这个比较模糊到...
  • fenglibing
  • fenglibing
  • 2007年07月16日 21:03
  • 9160
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数据库设计
举报原因:
原因补充:

(最多只允许输入30个字)