【数据库系统原理】第一章 引论

1.1 数据库系统的基本概念

1.1.1 课程介绍

学习数据库系统的三个目的:
  • 数据库系统的知识对于计算机学者至关重要。
  • 涉及的到领域多。
  • 能够找到一个好工作。
从三个方面学习数据库相关知识:
  1. (基础)数据库模型与设计:从现实中抽象出数据模型再将其转换为适合数据库管理系统(DBMS)的形式:表、视图。
  2. (重点)编程:使用数据库查询、更新数据(SQL)。
  3. (进阶)数据库管理系统实现。

1.1.2 数据库管理系统

数据库的访问方法:
  1. 利用数据库管理系统提供的交互工具访问数据库(如:MySQL WorkBench等)。
  2. 利用开发工具设计界面、处理数据,调用ODBC等接口访问数据库(如:JSP,VC++等)。
数据库(DB)与数据库管理系统(DBMS)的区别:
  • 数据库:数据集。
  • 数据库管理系统:数据库 + 一组用于访问、更新和管理这些数据的程序。
DBMS的五个特性:
  1. 数据访问的高效性和可扩展性。
  2. 缩短应用时间。
  3. 数据独立性(物理独立性/逻辑数据独立性)。
  4. 数据完整性和安全性。
  5. 并发访问和鲁棒性(恢复性)。
DBMS的发展历史:

一句话总结:三十年河东,三十年河西。

1.1.3 数据库管理系统与文件系统的对比

文件处理系统的优点:
  1. 被传统操作系统支持(无需安装其他)。
  2. 有一定的文件独立性。
文件系统的七个主要缺点:
  1. 数据的冗余和不一致(多种文件格式和信息重复存储)。
  2. 数据访问困难(需要较复杂的访问程序设计)。
  3. 数据孤立(多格式检索和共享困难)。
  4. 完整性问题(完整性约束)。
  5. 原子性问题(两个同属一个原子的操作被分割打断便难以复原)。
  6. 并发访问异常(系统允许并发,但在不受控制的情况下有可能导致数据不一致)。
  7. 安全性问题(并非所有用户都可以访问所有数据)。

1.2 数据库模式及数据类型

1.2.1 模式

关系数据库管理系统的公司:

三个公司

  • 传统关系数据库管理系统的公司面临“面向对象DB”公司的挑战。
  • “对象-关系”系统,保留了核心的关系模型,同时允许类型扩展为面向对象的系统。
  • 其他数据库产品:Ingres,Paradox,Foxbase…
开源数据库系统:
  • MySQL:网站上小型系统最流行的开源数据库。
  • PostgreSQL:高度可扩展的,开放源码的对象关系型数据库管理系统。
数据库系统三层数据抽象结构:
  1. 物理层
  2. 逻辑层:描述数据间关系
    如:
type instruct = record
			ID : char(5);
			name : char(20);
			dept_name : char(20);
			salary : numeric(8,2);
end;
  1. 视图层:应用程序能够隐藏数据类型的详细信息。
模式与实例:

实例与模式

数据库管理系统的模式结构:

在这里插入图片描述

  • 修改下层结构定义不影响上层解雇定义。
  • 修改物理结构不需要改变逻辑结构(使用DBMS最重要的好处)。
  • 修改逻辑结构不影响应用程序。
  • 应用程序依赖于逻辑结构但独立于数据的结构和存储。

1.2.2 数据模型

数据模型用于描述:
  • 数据结构
  • 数据关系
  • 数据语义
  • 数据约束
数据库设计过程:

不同层次需要不同的数据模型来描述。

E-R(Entity - Relationship)模型:
  • 实体(E):由属性描述的对象。
  • 联系(R):实体间的关联。
  • 应用:通常用于将数据库设计转化为关系模型的设计。

1.3 数据库语言、用户及体系结构

1.3.1 数据库语言

SQL的组成:组成
SQL的三种用法:
  1. 直接使用:
    ①SQL Server(查询分析器)
    ②Oracle(SQL*Plus、Work Sheet)
    ③MySQL(命令行客户端)
  2. 通过ODBC、JDBC在宿主语言中使用
  3. 在宿主语言中使用嵌入式SQL
数据库使用图示:

使用

1.3.2 数据库用户

四种用户:
  • 普通用户:依赖应用程序与系统交互。
  • 应用程序员:调用SQL与系统交互。
  • 富有经验的用户:利用查询语言或数据分析软件表达要求。
  • 特殊用户:编写脱离传统数据处理框架的数据库应用。(如CAD等)。

数据库管理员(DBA):对数据库系统进行集中控制。

事务管理:
  • 事务要求:ACID(原子性/一致性/隔离性/持久性)。
  • 事务管理组件:保证在断电宕机下的数据正确性。
  • 并发控制管理器:控制并发事务间的交互。

1.3.3 数据库体系结构

体系结构图:
两种结构:
  • 两层体系结构(早先的):像通过ODBC和JDBC这样的应用程序接口标准与客户端和服务器交互。
  • 三层体系结构(现在大多数):如基于web的应用程序及采用“中间件”的构建的应用程序。

(完)

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值