《数据库原理》第一章——从零理解数据库系统

一、 为什么学习数据库?------课程定位与目标
  • 核心地位:数据库技术是计算机科学中发展最快、应用最广的领域之一,是现代信息系统的核心和基础。它的重要性在大数据、云计算时代愈发凸显。
  • 课程目标:本课程旨在让学生系统掌握数据库的基本原理与技术,熟练使用SQL语言进行操作,并具备设计数据库模式及开发应用系统的能力。
  • 实践导向:课程强调理论与实践结合,以上机实验(如MySQL)为核心,涵盖数据定义、查询、事务、存储过程等关键技能。
二、 数据库世界的基石------四大基本概念

理解数据库,首先要厘清四个层层递进的核心概念:

  1. 数据 (Data):描述事物的符号记录,其含义(语义)与形式不可分割。
  2. 数据库 (DB):长期存储在计算机内、有组织、可共享的大量数据集合。其特点是冗余度小、独立性高、易扩展。
  3. 数据库管理系统 (DBMS):位于用户与操作系统之间的核心软件。它负责科学地组织、存储、高效地获取和维护数据,并提供安全性、完整性、并发控制和恢复等关键功能。
  4. 数据库系统 (DBS):引入数据库后的完整计算机系统,由数据库、DBMS、应用程序和数据库管理员(DBA)共同构成。
三、 数据管理的进化史------从人工到数据库系统

PPT通过对比三个阶段,清晰地展示了数据管理技术的飞跃:

  • 人工管理阶段:数据不保存、不共享、完全依赖程序,效率极低。
  • 文件系统阶段:数据可长期保存,但共享性差、冗余度大、独立性差,程序与数据紧密耦合。
  • 数据库系统阶段:由DBMS统一管理,实现了数据的高度共享、结构化、高独立性(物理与逻辑),并由系统统一控制安全、完整、并发与恢复。
四、 如何建模现实世界?------数据模型详解

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

  • 两类模型
    • 概念模型(信息模型) :从用户视角出发,用于数据库设计。E-R模型(实体-联系模型) 是其主流表示方法,用矩形(实体)、椭圆(属性)、菱形(联系)来描绘现实世界。
    • 逻辑/物理模型:从计算机系统视角出发,用于DBMS实现。
  • 三大经典数据模型
    • 层次模型:树形结构,一对多关系直观,但难以表示多对多关系。
    • 网状模型:图结构,能更直接地描述复杂关系,但结构复杂,用户不易掌握。
    • 关系模型当前最主流的模型 。数据以二维表的形式组织,概念单一、清晰,建立在严格的数学基础上,存取路径对用户透明,大大简化了开发工作。
五、 数据库系统的内部架构------三级模式与二级映像

这是保证数据库数据独立性的关键机制。

  • 三级模式
    • 模式(逻辑模式):全体数据的全局逻辑结构和特征描述,是所有用户的公共视图。
    • 外模式(子模式):用户或应用程序看到的局部数据视图,是模式的子集,保障了数据安全性。
    • 内模式(存储模式):数据的物理存储结构和方式。
  • 二级映像
    • 外模式/模式映像 :保证了逻辑独立性。当全局逻辑结构(模式)改变时,只需调整此映像,外模式和应用程序可不变。
    • 模式/内模式映像 :保证了物理独立性。当存储结构(内模式)改变时,只需调整此映像,模式和应用程序可不变。
六、 谁在参与?------数据库系统的组成

一个完整的数据库系统离不开以下要素:

  • 硬件:需要足够内存、外存和高通道能力。
  • 软件:核心是DBMS,还包括操作系统、开发工具和应用系统。
  • 人员 :包括数据库管理员(DBA)(负责全局管理、维护、优化)、系统分析员、数据库设计人员、应用程序员和最终用户。
相关推荐
Elastic 中国社区官方博客17 分钟前
使用 Elasticsearch 作为 Grafana 的直接替代 Prometheus 后端
大数据·数据库·sql·elasticsearch·搜索引擎·grafana·prometheus
杨婷12323 分钟前
2026 企业微信会话存档服务商选型指南:一维助手方案深度解析
大数据·数据库·企业微信
2601_963771371 小时前
Optimizing Logistics and Transportation Sites on WordPress
前端·数据库·windows·php
AC赳赳老秦1 小时前
采购专员自动化:OpenClaw 自动比价、生成询价单、跟踪供应商报价进度实战指南
开发语言·数据库·人工智能·python·自动化·github·openclaw
蚁库1 小时前
Oracle 11g RAC 多路径配置总搞不定?iSCSI + Multipath + ASM 磁盘组,14节视频带你完整通关
数据库·oracle
C++ 老炮儿的技术栈1 小时前
MFC 自定义纯色居中文字进度条控件
c语言·数据库·c++·windows·算法·c·visual studio
灯澜忆梦1 小时前
【MySQL1】| DDL 数据定义语言
数据库·sql·mysql
2601_963771372 小时前
Speeding Up Creative Agency Portfolios: A Performance Guide
前端·数据库·php
运维大师2 小时前
【安全与故障排查】03-【复盘】数据库被入侵:从发现到溯源全过程
数据库·安全·adb
Quincy_Freak3 小时前
银河麒麟 SQLite 实操:Excel 导入与 SQL 语法编辑功能详解摘要
数据库·arm·数据库管理·大数据分析·银河麒麟·aarch64·sqlitego