1 / 86

数据库技术及应用

南京信息工程大学 计算机与软件学院. 数据库技术及应用. 南京信息工程大学 计算机与软件学院. 第一章 数据库系统及 Visual FoxPro 概述. 数据库技术及应用. 本章学习要求. 教学目的. 了解数据管理的发展过程。 理解数据模型的概念,重点掌握关系模型。 理解掌握关系数据库系统的概念。 了解 VFP 的编程环境。 掌握项目管理器的概念及作用。. 教学重点与难点. 教学重点 数据库系统的定义,数据库的特点,数据库系统,关系模型, DBMS ,项目管理器。 教学难点

tirza
Download Presentation

数据库技术及应用

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 南京信息工程大学 计算机与软件学院 数据库技术及应用

  2. 南京信息工程大学 计算机与软件学院 第一章 数据库系统及Visual FoxPro概述 数据库技术及应用

  3. 本章学习要求 教学目的 • 了解数据管理的发展过程。 • 理解数据模型的概念,重点掌握关系模型。 • 理解掌握关系数据库系统的概念。 • 了解VFP的编程环境。 • 掌握项目管理器的概念及作用。 主讲: 南京信息工程大学计算机与软件学院

  4. 教学重点与难点 • 教学重点 数据库系统的定义,数据库的特点,数据库系统,关系模型,DBMS,项目管理器。 • 教学难点 数据库系统的定义,数据库的特点,关系模型,关系数据库系统。 主讲: 南京信息工程大学计算机与软件学院

  5. 1.1.1 数据和信息 • 数据(Data)是数据库中存储的基本对象 • 数据的定义 • 描述事物的符号记录 • 数据的种类 • 文本、数值、图形、图像、音频、视频等 主讲: 南京信息工程大学计算机与软件学院

  6. 1.1.1 数据和信息 • 信息 信息是关于现实世界事物的存在方式或运动形态反映的综合,信息是一种已经被加工为特定形式的数据,这种数据形式对接收者来说是有意义的,而且对当前和将来的决策具有明显的或实际的价值。 信息的特征 • 信息是有价值的,是可以被感知的。 • 信息可以通过载体传递,可以通过信息处理工具进行存储、加 工、传播、再生和增值。 主讲: 南京信息工程大学计算机与软件学院

  7. 1.1.2 数据管理技术的发展 • 什么是数据管理 对数据进行分类、组织、编码、存储、检索和维护等操作。 主讲: 南京信息工程大学计算机与软件学院

  8. 数据管理技术的发展过程 1.1.2 数据管理技术的发展 • 人工管理阶段(20世纪40年代中--50年代中) • 文件系统阶段(20世纪50年代末--60年代中) • 数据库系统阶段(20世纪60年代末--现在) 主讲: 南京信息工程大学计算机与软件学院

  9. 1.1.2 数据管理技术的发展 • 数据管理技术的发展动力 • 应用需求的推动 • 计算机硬件的发展 • 计算机软件的发展 主讲: 南京信息工程大学计算机与软件学院

  10. 一、人工管理阶段 1.1.2 数据管理技术的发展 • 时期 • 20世纪40年代中--50年代中 • 产生的背景 • 应用需求 科学计算 • 硬件水平 无直接存取存储设备 • 软件水平 没有操作系统 主讲: 南京信息工程大学计算机与软件学院

  11. 人工管理阶段(续) 1.1.2 数据管理技术的发展 • 特点 • 数据不保存; • 数据冗余度大; • 数据与程序之间依赖性大 主讲: 南京信息工程大学计算机与软件学院

  12. ...… ...… 应用程序1 数据集1 应用程序2 数据集2 应用程序n 数据集n 应用程序与数据的对应关系(人工管理阶段) 1.1.2 数据管理技术的发展 人工管理阶段应用程序与数据之间的对应关系 主讲: 南京信息工程大学计算机与软件学院

  13. 二、文件系统阶段 1.1.2 数据管理技术的发展 • 时期 • 20世纪50年代末--60年代中 • 产生的背景 • 应用需求 科学计算、管理 • 硬件水平 磁盘、磁鼓 • 软件水平 有文件系统 主讲: 南京信息工程大学计算机与软件学院

  14. 文件系统阶段(续) 1.1.2 数据管理技术的发展 • 特点 • 数据以文件形式保存; • 数据冗余度较大; • 易造成数据的不一致性; • 程序与数据相互依赖。 主讲: 南京信息工程大学计算机与软件学院

  15. 应用程序1 文件1 应用程序2 文件2 存取方法 ...… ...… 文件n 应用程序n 应用程序与数据的对应关系(文件系统阶段) 1.1.2 数据管理技术的发展 文件系统阶段应用程序与数据之间的对应关系 主讲: 南京信息工程大学计算机与软件学院

  16. 三、数据库系统阶段 1.1.2 数据管理技术的发展 • 时期 • 20世纪60年代末以来 • 产生的背景 • 应用背景 大规模管理 • 硬件背景 大容量磁盘、磁盘阵列 • 软件背景 有数据库管理系统 主讲: 南京信息工程大学计算机与软件学院

  17. 应用程序1 数据库 DBMS 应用程序2 … 应用程序与数据的对应关系(数据库系统) 1.1.2 数据管理技术的发展 数据库系统阶段应用程序与数据之间的对应关系 主讲: 南京信息工程大学计算机与软件学院

  18. 数据库系统阶段 1.1.2 数据管理技术的发展 • 特点 • 数据结构化 • 实现数据共享 • 减少数据冗余度 • 数据独立性 • 统一的数据安全保护 主讲: 南京信息工程大学计算机与软件学院

  19. 1.1.3 数据库系统的组成 基本概念 • 数据库(Database) • 数据库管理系统(DBMS) • 数据库系统(DBS) 主讲: 南京信息工程大学计算机与软件学院

  20. 一、数据库 1.1.3 数据库系统的组成 • 数据库的定义 • 数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据的集合。 • 数据库的基本特征 • 数据按一定的数据模型组织、描述和储存 • 可为各种用户共享 • 冗余度较小 • 数据独立性较高 • 易扩展 主讲: 南京信息工程大学计算机与软件学院

  21. 二、数据库管理系统 1.1.3 数据库系统的组成 • 什么是DBMS • 位于用户与操作系统之间的一层数据管理软件。 • 是基础软件,是一个大型复杂的软件系统 • DBMS的用途 • 科学地组织和存储数据、高效地获取和维护数据 主讲: 南京信息工程大学计算机与软件学院

  22. DBMS的主要功能 1.1.3 数据库系统的组成 • 数据定义功能 • 提供数据定义语言(DDL) • 定义数据库中的数据对象 • 数据操纵功能 提供数据操纵语言(DML) 实现对数据库的基本操作 (查询、插入、删除和修改) 主讲: 南京信息工程大学计算机与软件学院

  23. DBMS的主要功能 1.1.3 数据库系统的组成 • 数据组织、存储和管理 • 数据库的事务管理和运行管理 • 数据库的建立和维护功能 主讲: 南京信息工程大学计算机与软件学院

  24. 三、数据库系统 1.1.3 数据库系统的组成 • 什么是数据库系统(Database System,简称DBS) 在计算机系统中引入数据库后的系统构成 • 数据库系统的构成 • 数据库 • 数据库管理系统(及其开发工具) • 应用系统 • 数据库管理员 主讲: 南京信息工程大学计算机与软件学院

  25. 各种应用程序 数据库管理系统 操作系统 数据库 数据库管理员 1.1.3 数据库系统的组成 图1-1 数据库系统示意图 主讲: 南京信息工程大学计算机与软件学院

  26. 数据库系统的特点 1.1.3 数据库系统的组成 • 数据结构化 • 数据的共享性高,冗余度低,易扩充 • 数据独立性高 • 数据由DBMS统一管理和控制 主讲: 南京信息工程大学计算机与软件学院

  27. 1.2 数据模型 • 在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。数据模型就是现实世界的模拟。 • 数据模型应满足三方面要求 • 能比较真实地模拟现实世界 • 容易为人所理解 • 便于在计算机上实现 主讲: 南京信息工程大学计算机与软件学院

  28. 1.2.1 两大类数据模型 • 数据模型分为两类(分属两个不同的层次) (1) 概念模型 也称信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。 (2) 数据模型 按计算机系统的观点对数据建模,用于DBMS实现。 主要包括网状模型、层次模型、关系模型等。 主讲: 南京信息工程大学计算机与软件学院

  29. 两大类数据模型 (续) 1.2.1 两大类数据模型 • 客观对象的抽象过程---两步抽象 • 现实世界中的客观对象抽象为概念模型; • 把概念模型转换为某一DBMS支持的数据模型。 主讲: 南京信息工程大学计算机与软件学院

  30. 现实世界 认识 抽象 信息世界 概念模型 DBMS支持的数据模型 数据世界 两大类数据模型 1.2.1 两大类数据模型 现实世界中客观对象的抽象过程 主讲: 南京信息工程大学计算机与软件学院

  31. 一、信息世界中的基本概念 1.2.1 两大类数据模型 (1) 实体(Entity) 客观存在并可相互区别的事物称为实体。 可以是具体的人、事、物或抽象的概念。 (2) 属性(Attribute) 实体所具有的某一特性称为属性。 一个实体可以由若干个属性来刻画。 (3) 码(Key) 唯一标识实体的属性集称为码。 主讲: 南京信息工程大学计算机与软件学院

  32. 信息世界中的基本概念(续) 1.2.1 两大类数据模型 (4) 域(Domain) 属性的取值范围称为该属性的域。 (5) 实体型(Entity Type) 用实体名及其属性名集合来抽象和刻画同类实体称为实体型 (6) 实体集(Entity Set) 同一类型实体的集合称为实体集 学生(学号,姓名,性别,年龄,系名) 主讲: 南京信息工程大学计算机与软件学院

  33. 信息世界中的基本概念(续) (7) 联系(Relationship) • 现实世界中事物内部以及事物之间的联系在信息世界 中反映为实体内部的联系和实体之间的联系。 • 实体之间的联系通常是指不同实体集之间的联系 主讲: 南京信息工程大学计算机与软件学院

  34. 实体型A 实体型A 实体型A m 1 1 联系名 联系名 联系名 n 1 n 实体型B 实体型B 实体型B m:n联系 1:1联系 1:n联系 1.2.1 两大类数据模型 二、两个实体型之间的联系 用图形来表示两个实体型之间的这三类联系 主讲: 南京信息工程大学计算机与软件学院

  35. 班级 1 班级-班长 1 班长 1:1联系 二、两个实体型之间的联系 • 一对一联系(1:1)   定义: 如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1 实例 :一个班级只有一个正班长 一个班长只在一个班中任职 主讲: 南京信息工程大学计算机与软件学院

  36. 班级 1 组成 n 学生 1:n联系 两个实体型之间的联系 (续) 1.2.1 两大类数据模型 • 一对多联系(1:n) 定义: 如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n 实例 : 一个班级中有若干名学生, 每个学生只在一个班级中学习 主讲: 南京信息工程大学计算机与软件学院

  37. 课程 m 选修 n 学生 m:n联系 两个实体型之间的联系 (续) 1.2.1 两大类数据模型 • 多对多联系(m:n) 定义:如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体B具有多对多联系,记为m:n • 实例 :课程与学生之间的联系: 一门课程同时有若干个学生选修 一个学生可以同时选修多门课程 主讲: 南京信息工程大学计算机与软件学院

  38. 概念模型的一种表示方法 1.2.1 两大类数据模型 • 实体-联系方法(E-R方法) • 用E-R图来描述现实世界的概念模型 • E-R方法也称为E-R模型 主讲: 南京信息工程大学计算机与软件学院

  39. 学生 年龄 学号 姓名 性别 E-R图 1.2.1 两大类数据模型 • 实体型 用矩形表示,矩形框内写明实体名。 • 属性 用椭圆形表示,并用无向边将其与相应的实体连接起来 学生 教师 主讲: 南京信息工程大学计算机与软件学院

  40. E-R图(续) 1.2.1 两大类数据模型 • 联系 • 联系本身: 用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n) 主讲: 南京信息工程大学计算机与软件学院

  41. 实体型A 实体型A 实体型A m 1 1 联系名 联系名 联系名 n 1 n 实体型B 实体型B 实体型B m:n联系 1:1联系 1:n联系 1.2.1 两大类数据模型 联系的表示方法 主讲: 南京信息工程大学计算机与软件学院

  42. 课程 班级 班级 m 1 1 选修 班级-班长 组成 n n 1 学生 班长 学生 1:1联系 1:n联系 m:n联系 1.2.1 两大类数据模型 联系的表示方法示例 主讲: 南京信息工程大学计算机与软件学院

  43. 课程 m 成绩 选修 n 学生 联系的属性 1.2.1 两大类数据模型 • 联系的属性: 联系本身也是一种实体型,也 可以有属性。如果一个联系具有属性,则这些属性也要用无向边与该联系连接起来 主讲: 南京信息工程大学计算机与软件学院

  44. 班级号 专业名称 年级 姓名 性别 班 级 学号 籍贯 有 学 生 课程号 课程名 选修课程 成绩 课 程 课时数 学分 1.2.1 两大类数据模型 E-R模型例子 1 n m n 主讲: 南京信息工程大学计算机与软件学院

  45. 1.3 关系数据库 • 关系数据库系统采用关系模型作为数据的组织方式 • 1970年美国IBM公司的研究员E.F.Codd首次提出了数据库系统的关系模型 • 计算机厂商新推出的数据库管理系统几乎都支持关系模型 主讲: 南京信息工程大学计算机与软件学院

  46. 关系数据模型的基本术语 1.3 关系数据库 • 在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。 属性(列) 元组 (行) 学生关系 主讲: 南京信息工程大学计算机与软件学院

  47. 1.3 关系数据库 • 课程关系 主讲: 南京信息工程大学计算机与软件学院

  48. 1.3 关系数据库 选修关系 主讲: 南京信息工程大学计算机与软件学院

  49. 关系数据模型的基本术语 1.3 关系数据库 • 关系(Relation) 一个关系对应通常说的一张表 • 元组(Tuple) 表中的一行即为一个元组 • 属性(Attribute) 表中的一列即为一个属性,给每一个属性起一个名称即属性名 主讲: 南京信息工程大学计算机与软件学院

  50. 关系数据模型的基本术语 1.3 关系数据库 • 主码(Key) 表中的某个属性组,它可以唯一确定一个元组。 • 域(Domain) 属性的取值范围。 • 分量 元组中的一个属性值。 • 关系模式 对关系的描述 关系名(属性1,属性2,…,属性n) 如:学生(学号,姓名,年龄,性别,系,年级) 主讲: 南京信息工程大学计算机与软件学院

More Related