1.2数据模型(主线)

数据模型:对现实世界数据特征的抽象,是数据库系统的核心和基础。就是对现实世界的模拟

1.2.1两类数据模型

首先一个数据模型应该满足三方面的要求:
1、真实模拟现实世界
2、容易被理解
3、便于在计算机上实现

每一种数据模型的组成:
1、数据结构(描述数据库的组成对象以及对象之间的联系、静态)
2、数据操作(查询和更新、动态)
3、数据的完整性约束条件(一组完整性规则)

第一类:概念模型(信息模型)

按照用户的观点来对数据进行信息建模
从现实世界到概念模型的转换由数据库设计人员完成

基本概念

(1)实体entity

	客观存在的事物,并且可以相互区别的称为实体
	实体可以是概念,抽象,也可以是一个具体的人。
	比如我的其中一个室友,或者是比如水果

(2)属性attribute

	实体具有的某一个特征叫做属性
	一个实体可以由若干个属性来刻画

(3)码key

	唯一表示实体的属性集称为码
	比如一个学生,它的学号是独一无二的。比如每个人的身份证号。
	都是作为这个实体的码
	可以用这个属性来区分其他人

(4)实体型entity type

具有相同属性的实体必然具有相同特征和性质
用实体名及属性的集合在抽象同类实体
比如  学生(学号,姓名,年龄,入学年份)
学生是实体名

(5)实体集entity set

同一类型的实体的集合被称为实体集
比如全体的学生
因为学生是一个实体型,所以全体学生就是一个实体集

(6)联系relationship

联系有:实体内部联系和实体之间的联系
实体内部联系:实体内部的属性之类的联系
实体之间的联系:有一对多、多对多、一对一的关系。不同实体之间的联系

表示方法:E-R模型

第二类逻辑数据模型和物理模型

主要的数据模型结构:
1、格式化模型(分为层次模型和网状模型)
2、关系模型
3、面向对象数据模型
4、对象关系数据模型
5、半结构化数据模型

层次模型
树形结构来表示实体以及实体间的联系

层次模型-数据结构

(1)根节点:有且只有一个结点,没有双亲结点
(2)根以外的其他结点,有且只有一个双亲结点
(3)任何给定的一个值,只可以按层次的路径查看,没有一个子女记录可以脱离双亲记录而独立存在。

层次模型-数据操作-完整性约束

在进行数据的操作时,按照一定的约束性条件来操作

层次模型特点

(1)结构简单、查询效率高、良好的完整性支持
(2)查询子女结点时,必须通过双亲结点。不怎么适应现实需求,层次命令趋于程序化、对于插入和删除的约束性条件较多

网状模型
DBTG系统,典型的网状数据模型

网状模型-数据结构

(1)允许一个以上节点没有双亲
(2)一个结点可以有多余一个的双亲
(3)子女和双亲结点联系不唯一

网状模型-数据操作和完整性约束

数据库中不允许有重复的码

网状模型优缺点

1、更高模拟现实,存取效率更高
2、结构复杂、不易使用、添加编写程序的负担

关系模型
一个二维表

关系模型-数据结构

1、关系relation: 对应一张表
2、元组tuple:表中的一行
3、属性attribute:表的一列
4、码key:码键,某一个属性值,可以唯一确定一个元组
5、域domain:每一个属性的取值范围
6、分量:元组中的某一个属性值
7、关系模型:学生(属性1,属性2,…属性n) 一个实体型

关系模型-数据操作与完整性约束

用户只需要说明干什么找什么,不需要说明怎么干怎么找
提高了数据的独立性和用户生产效率

关系模型-优缺点

1、建立在严格的数学概念的基础上
2、概念单一,结构清晰
3、对用户透明、从而具有更高的独立性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值