关闭

数据库设计

436人阅读 评论(0) 收藏 举报

约束

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

-) 唯一 : 数据唯一

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

-) 默认 : 默认值

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



数据完整性

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

实现方法:设置主键(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.安装部署

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:9987次
    • 积分:287
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档