约束的建模:
一、约束的分类大致可以分为:
1、键(key) 是实体集中唯一标识一个实体的属性或属性集。不存在两个实体其构成键的所有属性值都相同,但部分相同时允许的。
2、单值约束(single-value-constraint)是指只在某种情况下有唯一性的要求。键是单值约束的主要来源,因为它要求一个实体集中的每个实体在键属性上都有唯一值。也有其他单值约束来源,如多对一联系。
eg:alter table userinfo
add unique index Index_unique using hash(name);
//执行如上语句就给userinfo表的name列加上了名为index_unique的唯一性约束,数据库在检查这个约束时使用hash算法
3、引用完整性约束(referential integrity constraint)是指要求某个对象所引用的值必须在数据库中实际存在。引用完整性与禁止悬挂指针或传统编程中的悬挂引用很相似(啥是禁止悬挂指针?自己查吧)
4、域约束(domain constraint)要求属性的值必须在一个具体的值集或范围里
5、一般约束(general constraint)是需要在数据库中得到满足的任意要求。
键让用户无混淆的标识实体。另外,因为存储单值必存储集合容易,及时那个集合中只有一个成员也如此。所以,知道惟一值会节省空间和时间。引用完整性约束和键还支持可使数据访问更快的存储结构。
键约束和一般约束都是数据库模式的一部分。他们是数据库设计者连同结构设计(如实体和联系)一块申明的,一旦一个约束被申明了,对数据库的任何违法约束的插入或修改操作都是不允许的。
其他
二、类(表)是一个模板,对象(一行数据)是一个实例
三、设计数据库三范式:
1)、原子性 不可再分(字段)
2)、完全依赖于主键
3)、消除间接依赖
部分资料来自《数据库系统基础教程》by jeffrey D.Ullman & Jennifer Widom
分享到:
相关推荐
《音乐管理系统》数据库设计报告详述了如何构建一个完整的音乐管理平台,涵盖了需求分析、数据库设计、SQL语句创建及数据测试等多个环节。系统旨在满足用户对音乐的搜索、上传、下载以及个人信息管理的需求。 首先...
### 图书管理系统数据库设计-MYSQL实现 #### 一、系统概述 ##### 1.1 系统简介 图书管理系统是一种用于图书馆内部管理的软件系统,主要用于管理图书信息、借阅记录、用户信息等。该系统的目标是提高图书馆的管理...
单,确认或删除订单。数据流图如下: 1.2.1 数据流分析 系统的主要数据流包括...数据库设计涉及用户表、图书表、分类表、订单表和客户信息表等核心表,确保了数据的完整性和一致性,为网上书店的高效运行提供了基础。
图书管理系统数据库设计-MYSQL实现 一、系统概述 图书管理系统是每个图书馆都需要进行的工作。一个设计良好的图书管理系统数据库能够给图书管理带来很大的便利。本系统的需求定义为:学生可以直接通过借阅终端来...
《图书管理系统数据库设计-MYSQL实现》 ...综上所述,本系统数据库设计充分考虑了图书馆管理的实际需求,通过精心设计的数据结构和完整性约束,实现了高效、准确的图书管理功能,为图书馆的日常运营提供了强大支持。
编写OA系统数据库设计说明书的主要目的是为系统开发团队提供明确的数据组织方式和存储规则,确保数据的一致性、完整性和安全性。此外,良好的数据库设计还能提升系统的性能,便于后期维护和升级。 2. 设计背景 OA...
图书管理系统数据库设计是一个关键环节,它涉及到图书馆日常运营的方方面面。在这个系统中,数据库的构建主要是为了支持学生借阅、归还图书,管理员管理图书和学生信息等操作。以下是基于给定内容的详细知识点解析:...
综上所述,这个图书管理系统数据库设计考虑了各个关键方面,包括用户需求、功能模块划分、数据库实体关系和索引优化,旨在提供一个高效、易用的图书管理解决方案。通过MySQL实现,可以确保系统在数据存储和处理方面...
这个实训项目旨在帮助你理解数据库设计的基本原则,如表结构设计、字段类型选择、约束条件设置以及表间关系的建立。通过实际操作,你可以加深对关系型数据库的理解,为将来构建更复杂的系统奠定基础。在设计数据库时...
图书管理系统数据库设计是一个关键环节,它涉及到图书馆日常运营的方方面面,包括学生借阅、图书管理、用户信息维护等。在本文档中,我们探讨了如何使用MySQL实现这样一个系统。 首先,系统概述部分强调了图书管理...
【数据库课程设计--求职网站数据库设计】 在求职网站的数据库设计中,主要目的是为了构建一个高效、稳定且功能丰富的在线招聘平台。设计的目标是服务于企业和求职者,提供便捷的信息交流和匹配服务。以下是该设计的...
图书管理系统数据库设计是一个重要的环节,尤其在采用MySQL作为数据库实现时,它涉及到高效的数据存储、检索和管理。本文将详细阐述图书管理系统的核心知识点,包括系统概述、系统功能设计、数据库设计方案以及索引...