初步认识数据库系统

一、什么是数据库

1.1 数据库与信息管理

  • 数据库是电子化信息的集合,将信息规范化并使之电子化,形成电子信息‘库’,以便利用计算机对这些信息进行快速有效的存储,检索,统计与管理

1.2 数据库与表

  • 数据库起源于规范化“表(Table)”的处理
  • Table:以按行按列形式组织及展现的数据

1.3 对“表”抽象:理解-区分-命名-表达

  • 表中描述了一批相互有关联关系的数据==>关系

1.4 数据库与表的关系

  • Database:相互之间有关系的Table的集合

二、什么是数据库系统

2.1 数据库系统的构成——概念层次

  • 数据库系统(工作环境)
  • 数据库(DB,Database):相互有关联关系的数据的集合
  • 数据库管理系统(DBMS,Database Management System):管理数据库的一种系统软件
  • 数据库应用(DBAP,DataBase Application):数据库应用程序
  • 数据库管理员(DBA,DataBase Administrator)

2.2 数据库系统(实例层次)

三、什么是数据库管理系统

3.1 从用户角度看数据库管理系统的功能

  • 数据库定义:定义数据库中Table的名称、标题(内含的属性名称及对该属性值的要求)等
    • DBMS提供一套数据定义语言(DDL:Data Definition Language)给用户
    • 用户使用DDL描述其所要建立表的格式
    • DBMS依照用户定义,创建数据库及其中的Table

  • 数据库操纵:向数据库的Table中增加/删除/更新数据对数据进行查询、检索、统计等
    • DBMS提供了一套数据操纵语言(DML:Data Manipulation Language)给用户
    • 用户使用DML描述其所要进行的增删改查等操作
    • DBMS依照用户的操作描述,实际执行这些操作

  • 数据控制:控制数据库中数据的使用——哪些用户可以使用,哪些用户不可以
    • DBMS提供一套数据控制语言(DCL:Data Control Language)给用户
    • 用户使用DCL描述其对数据库所要实施的控制
    • DBMS依照用户的描述,实际进行控制

  • 数据库维护:转储/恢复/重组/性能检测/分析...
    • DBMS提供一系列程序(实用程序/例行程序)给用户
    • 在这些程序中提供了对数据库维护的各种功能
    • 用户使用这些程序进行各种数据库维护操作
    • 数据库维护的实用程序,一般是由数据库管理员(DBA)来使用和掌握的

3.2 数据库语言

  • 数据库语言:使用者通过数据库语言利用DBMS操作数据库
    • 数据库定义语言(DDL):DBMS提供给用户,以便用户定义数据格式
    • 数据操纵语言(DML):DBMS提供给用户,以便用户对数据进行操作
    • 数据控制语言(DCL):DBMS提供给用户,以便用户对数据进行控制
    • 以上统称为SQL语言:结构化的数据库语言
  • 数据库各种操作的执行:DBMS按用户要求进行定义、操纵、控制和维护

  • 数据库语言与高级语言
    • 一条数据库语言语句相当于高级语言的一个或多个循环程序
    • 数据库语言可以嵌入到高级语言(宿主语言)中使用
  • 从系统实现角度看DBMS的功能
    • “形式=>构造=>自动化”----数据库管理系统的实现
  • 数据库管理系统(系统软件):从系统角度看DBMS的功能
    • DBMS为完成DB管理,在后台运行着一系列程序
      • 语言编辑器:将用数据库语言书写的内容,翻译成DBMS可执行的命令。例如:DDL编译器、DML编译器、DCL编译器等;
      • 查询优化(执行引擎)与查询实现(基本命令的不同执行算法):提高数据库检索速度的手段;例如贯穿于数据存储哥哥阶段的优化程序
      • 数据存储与索引:提供数据在磁盘、磁带等上的高效存取手段。例如:存储管理器、缓冲区管理器、索引/文件和记录管理器等
      • 通信控制:提供网络环境下数据库操作与数据传输手段

  • DBMS为完成DB管理,在后台运行着一系列程序
    • 事务管理:提供提高可靠性并避免并发操作错误的手段
    • 故障恢复:是数据库自动恢复到故障发生钱正确状态的手段,例如:提供了备份、运行日志操控等实用程序
    • 安全性控制:提供合法性检验,避免非授权非法用户访问数据库的手段
    • 完整性控制:提供数据及数据操作正确性检测的手段
    • 数据字典管理:管理用户已经定义的信息
    • 应用程序接口(API):提供应用程序实用DBMS特定功能的手段
    • 数据库数据装载、重组等实用程序
    • 数据库性能分析:统计在运行过程中数据库的各种性能数据,便于优化运行

猜你喜欢

转载自blog.csdn.net/qq_38689352/article/details/110621826