数据库绪论

一、理解Data、DB、DBMS、DBS
数据
数据库:数据的集合(最重要的应该是数据模型
数据库管理系统:在OS层上的软件程序,可以实现对数据库的管理、优化、并发控制、故障的修复等各种各样的操作,在向上就是应用层了
数据库系统:应用程序、dbms、db、数据库管理员的整体

在数据库设计中数据的组织方式和结构——数据模型
二、数据模型
现实社会--概念模型
概念模型:如何将现实抽象出来,不考虑逻辑设计和物理设计
一种实现方式:ER图(实体-联系图),诸如商家、产品就是实体,商家贩卖产品就是他们之间的联系
概念模型--逻辑模型
数据在逻辑上是怎么设计的,有层状,网状,关系型等
逻辑模型--物理模型
在硬件层面怎么设计,怎么实现索引等等
注:前两项主要由数据库开发人员设计,最后一项由dbms完成

逻辑模型最简单的三种例子
三、逻辑模型
层状模型:使用实体一对多(树形)的思路。比如一条记录就是一个实体,学校有一条实体“浙江大学+一些属性”,这条实体连接科研室和学生下的所有主体,然后科研室下某一主体“001室…”又连接在001室下的所有老师的主体,这就构成了一个树形结构。
网状模型:使用实体多对多(图状)的思路,它更能模拟现实情况。如学生和课程,一个学生连接多个课程,一个课程连接多个学生。实现方式叫做使用两个一对一,即加一个选课,他里面的实体定义为“学生-课程-成绩”,也就是把之前的每一条联系变成一个实体。因此学生联向有学生的选课,课程亦然。
简单了解即可,作为当今oracle、mysql等仍在使用的数学模型,关系型数据库之后会具体展开。
关系模型:实体和联系都被当做关系,关系就是熟称的表,如学生表、课程表、选课表。此外从数据运算角度看,存取路径是透明的,增删改查只表示结果。

在理解了数据库的模型大概后,了解数据库的内部结构和独立性的实现
四、数据库内部结构
三层模式结构
从上到下,应用程序-外模式-模式-内模式-数据库(硬件)
为什么这样有利于让外模式负责和应用程序、开发工具、语言相关的,让内模式负责和记录存储方式、索引组织方式、压缩、存储等,而模式负责所有数据的逻辑。
注:应用程序员只看得到外模式。
逻辑和物理独立性的实现方法叫二级映像
即外模式/模式映像,当模式修改时只需要修改映像,而应用程序不需要任何改动,因此保证了逻辑独立性。同理模式/内模式映像保证了物理独立性。

补充一些常用术语
Schema模式:比如学生-学号-年龄-均绩,不包含具体值
Instance实例:数据库某一时刻的状态
Attribute属性:一列,比如学号
Tuple元组:一行即一条数据
Key元码:在属性中可以唯一标识的属性,如学号
Domain域:一个属性的取值范围
Candidate Key候选码:在关系中可以唯一标识元组的某些属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值