数据模型
**数据模型是对现实世界数据进行抽象**
1.3.1数据抽象的过程
从信息到数据
1.概念模型
- 数据模型抽象:数据库概念模型是对现实世界中的实体和关系进行抽象和建模的过程。它主要关注数据的结构、组织和相互关系,而不关注具体的实现细节。
- 数据独立性:数据库概念模型能够实现数据与应用程序之间的独立性。即使数据库的物理结构发生改变,应用程序仍然可以通过逻辑模型来访问和操作数据,而不需要对应用程序进行修改。
- 易于理解和维护:数据库概念模型使用了一些直观的概念和符号,使得它容易被人理解和维护。它提供了一种简单、标准和统一的方式来描述和表示数据,使得数据的管理和处理更加简便和高效。
- 可扩展性和灵活性:数据库概念模型能够轻松地扩展和适应不同的需求。通过对概念模型进行修改和扩展,可以满足不同应用程序和用户的需求,而不需要对数据库的物理结构和应用程序进行重构。
2.概念模型的基本概念
数据库概念模型是指用于描述数据库中数据的结构、关系和约束的一种抽象机制。它是数据库设计的基础,用于帮助开发人员理解和组织数据库中的数据。
- 数据:数据库中存储的信息,可以是数字、文字、图像、声音等形式。
- 实体:数据库中的实际对象或概念,如人、物、地方、事件等。
- 属性:实体所拥有的特征或性质,用来描述实体。
- 关系:实体之间的联系,表示不同实体之间的关联或依赖关系。
- 主键:唯一标识实体的属性,用来保证每个实体的唯一性。
- 外键:其他实体的主键作为属性,用来建立实体之间的关联。
- 模式:数据库中实体、属性和关系的集合,描述了数据库中数据的结构。
- 约束:对数据的限制或要求,如主键约束、唯一约束、外键约束等。
- 域:属性的取值范围,定义了属性可以取的值的类型和范围。
- 关系模型:使用表格的形式来表示实体、属性和关系的模型,常用于关系型数据库。
- 实体-关系模型:使用实体、属性和关系来表示数据库中的数据结构,常用于面向对象数据库。
- 层次模型:用树状结构表示数据之间的层次关系,常用于层次型数据库。
- 网络模型:用网状结构表示数据之间的复杂关系,常用于网络型数据库。
- 关系数据库:基于关系模型的数据库系统,使用表格来组织和管理数据。
- 面向对象数据库:基于实体-关系模型的数据库系统,使用对象来组织和管理数据。
2.逻辑模型
- 逻辑模型表达了数据库的整体逻辑结构。
- 逻辑模型是从数据库实现的观点出发,对数据建模
- 逻辑模型硬件独立,但软件依赖
- 逻辑模型是数据库设计人员与应用程序员之间进行交流的工具
3.外部模型
- 是逻辑模型的一个逻辑子集
- 硬件独立,软件依赖
- 外部模型反映了用户使用数据库的观点
从整个系统考察
- 简化了用户的观点
- 有助于数据库的安全性保护
- 外部模型是对概念模型的支持
4内部模型
内部模型又称为物理模型,是数据库最底层的抽象,它描述数据在磁盘上存储方法、存取设备和存取方法。
不必考虑内部级的设计细节,由系统自动实现
1.3.2 常用数据模型
1数据模型的组成要素
- 数据结构:数据结构定义了数据在模型中的组织方式和关系。它描述了数据的实体、属性和它们之间的关系,常用的数据结构包括实体-属性关系图(ER图)、层次结构和网络模型等。
- 数据操作:数据操作定义了对数据进行添加、修改、删除和查询等操作的规则和方式。例如,数据操作可以包括对数据的插入、更新和删除操作,以及对数据的查询和检索操作。
- 数据约束:数据约束定义了对数据进行限制和约束的规则。它可以包括数据的完整性约束、域约束、参照完整性约束等。数据约束可以保证数据的一致性和有效性。
这些要素共同构成了数据模型,通过数据模型可以对现实世界中的数据进行抽象和表示,从而便于数据的管理、操作和使用。不同的数据模型可以适用于不同的应用场景和需求,常见的数据模型包括层次结构模型、网络模型、关系模型和面向对象模型等。
2关系模型
3关系模型的操作与完整性约束
关系模型的操作要包括查询、插入、删除和更新
关系的完整性约束包括三大类:实体完整性、参照完整性、用户自定义完整性。