数据库系统概论

数据库系统概论期中复习——基础篇

1 绪论


1.1 数据库系统概述

  • 数据库的四个基本概念:
    • 数据:描述事物的符号记录称为数据
    • 数据库:长期储存在计算机内、有组织的可共享的大量数据的集合
      • 数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性
      • 特点:永久存储、有组织、可共享
    • 数据库管理系统:计算机的基础软件(位于用户与操作系统之间)
      • 数据的定义(DDL)、组织、存储、管理、操纵(DML)功能
      • 数据库的事务管理和运行管理、数据库的建立和维护功能、其他功能
    • 数据库系统:由数据库、数据库管理系统(及其开发工具)、应用程序和数据库管理员(DBA)组成的存储、管理、处理和维护数据的系统
  • 数据管理技术经历了人工管理、文件系统、数据库系统三个阶段:
    • 人工管理:数据不保存、应用程序管理数据、数据不共享、数据不具有独立性
    • 文件系统:数据可长期保存、由文件系统管理数据、数据共享性差、冗余度大、数据独立性差
    • 数据库系统
      • 数据结构化:不仅数据内部是结构化的,而且整体式结构化的,数据之间是具有联系的,这个联系由数据库管理系统维护。不仅存储结构化,存取的方式也很灵活,可以细化到一条记录,而文件系统存取单位是记录。
      • 数据的共享性高、冗余度低且易扩展:数据共享减少数据冗余,还能避免数据之间的不相容性和不一致性。面向整个系统使得数据库系统弹性大,易于扩充。
      • 数据独立性高:物理独立性(物理存储)与逻辑独立性(逻辑结构)保证数据和程序的独立性。数据独立性是由数据库管理系统提供的二级映像功能保证的。
      • 数据由数据库管理系统统一管理和控制:包括:数据的安全性保护(防止不合法使用造成的数据泄密和破坏)、数据的完整性检查(数据的正确性、有效性、相容性)、并发控制、数据库恢复

1.2 数据模型

  • 数据模型是对现实世界数据特征的抽象,用来描述数据、组织数据和对数据进行操作。三要素数据结构(描述数据库的组成对象及对象之间的联系,根据数据结构的类型来命名数据模型——对系统静态特征的描述)、对数据的操作(对数据库中的各种对象的实例允许执行的操作的集合,查询+更新(插入、删除、修改)——对系统动态特征的描述)和对数据的完整性约束(实体完整性+参照完整性)
  • 分类:
    • 概念模型:用于数据库设计
    • 逻辑模型:包括层次模型、网状模型、关系模型、面向对象模型、对象关系数据模型、半结构化数据模型。主要用于数据库管理系统的实现
    • 物理模型:描述数据在系统内部、磁盘或磁带上的表示方式和存取方式,是面向计算机系统的
  • 概念模型
    • 几个概念:实体、属性、码、实体型、实体集、联系
    • 概念模型的表示方法:E-R图(实体-联系法Entity-Relationship approach)
  • 逻辑模型
    • 层次模型——树:一个根节点,其他节点有且只有一个父节点。插入时,如果没有相应的父节点就没办法插入;删除时,删除父节点则删除一整枝。
    • 网状模型——网:允许一个以上的结点无双亲,一个节点可以有多于一个的双亲。
    • 关系模型:
      • 每个关系数据的结构是一张规范化的二维表
      • 基本概念:关系(一张表)、元组(表里的一行)、属性、码、域、分量(元组的属性值,每个分量不可分)、关系模式R(U,F)

1.3 数据库系统的结构

  • 从数据库应用开发人员角度看,数据库系统通常采用三级模式结构,这是数据库系统内部的系统结构
  • 从数据库最终用户角度看,数据库系统的结构分为单用户结构、主从式结构、分布式结构、客户-服务器、浏览器-应用服务器 / 数据库服务器多层结构等,这是系统外部的体系结构
  • 模式:数据库中全体数据的逻辑结构和特征的额描述,仅涉及型的描述,不涉及具体的值,同一个模式可以有很多实例,相对稳定
  • 数据库系统的三级结构模式
    • 模式——数据库中全体数据的逻辑结构和特征的额描述,所有用户的公共数据视图,一个数据库只有一个模式,用DDL定义模式
    • 外模式:数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用给有关的数据的罗吉表示,通常是模式的子集,应用程序根据外模式编写
    • 内模式:存储模式,一个数据库只有一个内模式,是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式(比如:升序降序、聚簇存储、B+树索引、hash索引,是否压缩是否加密)
  • 数据库的二级映像功能与数据独立性:
    • 外模式 / 模式映像:保证了数据与程序的逻辑独立性
    • 模式 / 内模式映像:保证了数据与程序的物理独立性

1.4 数据库系统的组成

  • 硬件平台及数据库、软件、人员

2 关系数据库

2.1 关系数据结构及形式化定义

  • 关系
    • 候选码:某一属性组的值能唯一地标识一个元组,其子集不能(全码是针对候选码说的)
    • 主码:若一个关系中有多个候选码,选修顶一个作为主码
    • 主属性:包含在任何一个候选码中的属性
    • 规范化的关系称为范式
  • 关系模式:关系是关系模式在某一时刻的状态或内容,关系模式是静态的、稳定的,关系是动态的、随时间不断变化的。

2.2 关系操作

  • 关系模型中常用的关系操作包括查询操作(分为:选择、投影、连接、除、并、交、差、笛卡尔积)和插入、删除、修改操作两大部分,操作的对象都是集合
  • 关系操作的表示方法:关系代数、关系演算,介于关系代数和关系演算之间的SQL结构化查询语言

2.3 关系的完整性

  • 实体完整性:主属性不为空
  • 参照完整性:关系A中的属性a(不是码)是参照关系B中的属性b的(b必须是B中的主码),则a是A的外码,则a的取值或者为空,或者为B中b的取值
  • 用户定义的完整性

2.4 关系代数

  • 传统的集合运算:并、交、差、笛卡尔积
  • 专门的关系运算:选择、投影、连接、除

3 关系数据库标准语言SQL

3.1 概念性的东西

  • 分类:
    • 数据定义语言DDL
    • 数据操纵语言DML

3.2 数据定义

  • 概述:
    • 操作对象:模式SCHEMA、表TABLE、视图VIEW、索引INDEX
    • 操作方式:创建CREATE、删除DELETE、修改ALTER
    • **注意:**模式和视图不可以修改
  • 创建模式,用户就要有数据库管理员权限或者是获得了管理员授予的权限
  • 模式操作
#定义模式
CREATE SCHEMA<模式名>AUTHORIZATION<用户名>[<表定义子句>|<视图定义子句>|<授权定义子句>]
#删除模式
DROP SCHEMA<模式名><CASCADE|RESTRICT>
  • 基本表操作
    • 基本表属于模式,所以创建的时候 CREATE TABLE "S-T".Student(...);
    • 也可以设置搜索路径 SET search_path TO "S-T",PUBLIC;
#定义基本表
CREATE TABLE<>(<列名><数据类型>[列级完整性约束条件]
	[,<列名><数据类型>[列级完整性约束条件]]
	...
	[,<表级完整性约束条件>]);
#修改基本表
ALTER TABLE<表名>
	[ADD[COLU
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值