第5章数据库应用基础数据库的基本概念数据库系统的组成及特点数据模型关系数据库的基本概念及基本操作本章知识要点5.1数据库概述5.1.1数据库应用实例5.1.2数据库的基本术语5.1.3数据库技术的发展本节内容5.1.1数据库应用实例超市销售系统铁路售票系统图书馆管理系统银行业务系统学校教学管理系统……能列出哪些管理需要大批量数据吗??简单地说,数据库是相关信息的集合。为了实现计算机的信息管理和处理,必须科学合理地建立数据库,要有相应系统软件的支持,而且要开发出相应业务的应用软件。5.1.2数据库的基本术语数据(Data)是用来记录信息的可识别的符号,是数据库中存储的基本对象。数据礼貌aBkWG5.1.2数据库的基本术语数据库(DataBase,DB)是长期存放在计算机外存上、有结构的、可共享的相关数据的集合。数据库5.1.2数据库的基本术语数据库管理系统(DBMS)是用于建立、使用和维护数据库的系统软件数据库管理系统数据库管理系统是位于操作系统之上的一层系统软件。5.1.3数据库技术的发展1第一阶段人工管理阶段第二阶段文件系统阶段第三阶段数据库系统阶段特点:数据不保存在计算机内。没有专用的软件对数据进行管理。只有程序的概念,没有文件的概念。一组数据对应一个程序。人工管理阶段学生处教务处人事处学生信息数据集课程信息数据集教师信息数据集应用程序1应用程序2应用程序n数据组1数据组2数据组n应用程序1应用程序2应用程序n学生数据文件课程数据文件教师数据文件文件管理阶段(50后期-60中期)文件系统缺点:共享性差,数据冗余度大文件系统中,数据为什么难以共享呢?1005张三7006151800设计所职工号姓名出生日期工资部门1005张三7006151800设计所文件系统中,数据的含义不明显定义数据时,能把数据的含义也定义进去;存储数据时,能一起存储数据的含义;显示数据时,能同时显示数据的含义,成为改进文件系统的关键。从而出现了数据管理的新方式—数据库系统。在数据库系统中,数据以一种全新的方式—数据库存储;管理数据库的生成、修改、使用的是一种新的管理数据的软件—数据库管理系统。应用程序1应用程序2应用程序n数据库数据库管理系统数据库管理阶段(60后期-)5.2数据库系统5.2.1数据库系统的组成5.2.2数据库系统的三级模式结构5.2.3数据库管理系统简介本节内容5.2.4数据库系统的特点数据库系统(DataBaseSystem,DBS)是指在计算机系统中引入了数据库技术后的系统,它包括硬件、软件和人员等部分。数据库DB强调的是数据数据库管理系统DBMS是系统软件数据库系统DBS强调的是整个应用系统5.2.1数据库系统的组成用户1用户2……用户3数据库管理员数据库图5.3数据库系统组成示意图应用系统应用开发工具数据库管理系统操作系统DBS组成图示用户用户用户应用系统应用开发工具数据库管理系统数据库数据库管理员DBMS硬件DS操统BM编译系统工具应系用统作系DBA数据库系统的组成数据库(DB):有组织的相关数据的集合数据库管理系统(DBMS):DBMS是数据库系统的核心,其主要任务是管理数据库,为用户提供访问数据库的方法。应用系统:为满足用户需要而开发的数据库应用软件应用开发工具:为开发数据库应用系统而采用的各种开发工具。人员:与数据库系统打交道的人。最终用户、应用程序开发人员、数据库管理员5.2.2数据库系统的三级模式结构最终用户-外部视图-外模式应用系统开发人员-概念视图-模式数据库管理员-内部视图-内模式5.2.2数据库系统的三级模式结构模式又称为逻辑模式,是数据库中全体数据的全局逻辑结构和特征的描述。外模式又被称为用户模式,是根据用户的需要从模式中导出的子模式,是用户最后看到的数据的局部逻辑结构,是与某应用程序有关的整个数据库中部分数据的描述。外模式模式内模式又称为存储模式,是数据物理结构和存储方式的描述,是数据在存储介质上的保存方式。内模式5.2.2数据库系统的三级模式结构(续)模式/内模式映像定义了模式和内模式之间的对应关系,是数据的全局逻辑结构和数据的存储结构之间的对应关系。模式/内模式映像外模式/模式映像定义了外模式和模式之间的对应关系,是数据的全局逻辑结构和数据的局部逻辑结构之间的对应关系。外模式/模式映像模式/内模式映象内模式数据库模式外模式/模式映象B外模式/模式映象A数据库管理系统外模式A外模式B应用程序1应用程序2应用程序3应用程序4应用程序5OS数据库系统三级模式结构数据库管理系统(DBMS)的功能数据库定义功能数据操纵功能数据库的建立和维护功能数据库的运行管理功能数据通信功能数据字典常见的数据库管理系统MicrosoftAccessVisualFoxProOracleMicrosoftSQLServer常见的数据库管理系统大型常用的数据库管理系统:Oracle数据库管理系统Sybase数据库管理系统(铁路系统)DB2MicrosoftSQLServer数据库管理系统小型常用的数据库管理系统:MicrosoftAccess数据库管理系统VisualFoxPro数据库管理系统5.2.4数据库系统的特点数据的结构性强1.数据的共享性好,冗余度低2.数据的独立性高3.数据控制功能强4.5.3数据模型5.3.1三个世界的概念5.3.2概念模型5.3.3数据模型本节内容•5.3.1三个世界的概念人们管理的事物存在现实世界中,事物与事物之间存在着联系。概念世界是现实世界中的事物在人们头脑中的反映,是对客观事物及其联系的抽象描述。概念世界现实世界是在概念世界抽象描述的基础上,进一步抽象为便于计算机处理的数据形式。数据世界(计算机世界)数据描述数据从现实世界到计算机数据库里的具体表现要经历3个阶段现实世界概念世界数据世界(DBMS支持的数据模型)对信息进行收集、分类和抽象对信息进行加工转换(事物、事物性质)(实体、实体属性)(记录、数据项)抽象化数据化概念模型描述数据模型描述•5.3.2概念模型概念模型是人们对现实世界客观事物及其联系的一种抽象描述,是人们对现实世界抽象出来的模型。概念模型是现实世界到计算机世界而构建的一个中间层次,是数据库设计的基础。实体:把客观存在并且可以相互区分的事物称为实体,例如一名学生。属性:描述实体的特性称为属性。实体集:同一类型实体的集合称为实体集。实体型:对同类实体的描述称为实体型。它由实体名与其属性名共同构成。概念模型的基本概念和术语关键字:能够唯一标识实体集中每个实体的某一属性或属性组称为关键字,它的值能够唯一区分不同的实体。联系:在概念模型中将实体集之间的对应关系称为联系。通过联系反映现实世界事物之间的相互关联。概念模型的基本概念和术语部门医生护士1m组成n工作医生护士执行mnp一对多多对多一对一、一对多、多对多两个实体集的联系有三种类型:例如:在足球世界杯比赛中,球队集与场上队长集之间对于代表关系来说,具有一对一的联系;主教练集与队员集之间对于指导关系来说,具有一对多的联系;裁判集与队员集之间对于执法关系来说,具有多对多的联系。5.3.3数据模型数据模型是计算机世界按数据库的观点,对概念世界的数据抽象表示的工具。在数据库系统中DBMS支持的常见的数模型有三种:层次模型、网状模型和关系模型层次模型用树状结构表示实体与实体间联系的数据模型特点仅有一个结点(根结点);其他结点有且仅有一个父结点;记录之间的联系通过指针来实现,查询效率较高;缺点由于层次顺序的严格和复杂,引起数据的查询和更新操作很复杂,因此应用程序的编写也比较复杂。层次模型举例:学校的系所教课程的层次模型系编号系名室编号室名课程号课程名学时数姓名性别职称年龄其中系是根结点,树状结构反映的是实体型之间的结构,该模型实际存储的数据通过链接指针体现的这种联系。网状模型用网状结构表示实体与实体间联系的数据模型特点允许结点有多于一个的父结点;可以有一个以上的结点没有父结点;记录之间联系通过指针实现。缺点:数据结构复杂和编程复杂教师课程学生教室例如:某学校教学管理的简单的网状模型•一名学生可以选修多门课程•一名教师可以开多门课程•一门课程可以由多名教师教•一门课程可以在多个教室上•一个教室可以上多门课程关系模型用二维表来表示实体与实体之间联系的数据模型。关系模型是将同一类实体的数据组织成二维表的形式。每个二维表称为一个关系。学号姓名性别年龄专业20070001李红女19计算机20070002王晓平男18自动化20070005赵胜利男19计算机20070003张灵女20化工20070004杨中华女18化工关系student(学生基本情况表)关系:一个关系对应一张二维表。每个关系必须有一个关系名。例如,关系名student。属性:表中的一列为一个属性。每个属性都有一个名称,称为属性名。记录:表中的一行数据称为一条记录。也被称为元组。关键字:表中某一属性或属性组,它的值能够唯一标识一条记录,则把这一属性或属性组称为关键字。关系模型的基本概念和术语关系模型的逻辑结构是一张二维表,由行和列组成。关系学号姓名性别系别年龄籍贯95001950029500395004……95700李勇刘成王明张力杨晓东男女女男男计科信息数学计科物理2019181921江苏山东北京北京山西学生登记表关系名关键字属性(列)属性名元组(行)值域:属性的取值范围称为值域。关系模式:是对关系的描述,它主要包括关系名,组成该关系的各属性名、值域和关键字。关系模式的一般形式为:关系名(属性名1,属性名2,……,属性名n)关系模型的基本概念和术语关系模式的一般形式示例1:关系student的关系模式是:student(学号,姓名,性别,年龄,专业)其中属性“学号”带有下划线,表示是关键字。示例2:关系success的关系模式是:success(学号,课程编号,成绩)其中属性“学号”和“课程编号”带有下划线,表示关键字是由属性“学号”和“课程编号”的组合。5.4关系数据库及其应用5.4.1关系数据库5.4.2关系模型的三级模式结构5.4.3关系模型的完整性规则本节内容5.4.5结构化查询语言SQL5.4.4关系操作5.4.1关系数据库采用关系模型作为数据的组织方式的数据库称为关系数据库。关系数据库是若干个关系的集合(由若干张相关的二维表组成)每个关系必须有一个关键字,由表中某一属性或属性组构成,它的值能够唯一确定一条记录。在关系数据库中,两个关系的联系一般是通过相同的属性建立的,其中,将一个关系称为主表,另一个关系称为从表。主表中的关键字称为主键;而从表中某个属性或属性组不是该关系的关键字,但它是主表的关键字,则把这个属性或属性组称为外键。表与表之间的联系是通过主键和外键为纽带建立的。在两个关系中,以外键作为主键的表称为主表,外键所在的表称为从表。学号姓名性别年龄专业20070001李红女19计算机20070002王晓平男18自动化20070005赵胜利男19计算机20070003张灵女20化工20070004杨中华女18化工关系student(学生基本情况表)从表主表外键主键关系模型的数据结构学号姓名性别年龄系号原校9301011张力女2201北京四中9303021林宏叶男2310上海中学9210081王朝男2410人大附中………………9201291陈婷婷女2301北大附中9301161李一明男3001科大附中系号系名办公室主任电话01计算机教209张立30102物理教501李记欣27603数学教410王鸣利34604化学教306高明417……………外语教701陈刚628学生登记表系信息表属性(列)和属性名元组(行)主键外键关系名从表主表5.4.2关系模型的三级模式结构关系模型基本遵循数据库系统的三级模式结构在关系模型中:模式是关系模式的集合外模式是关系子模式的集合内模式是存储模式的集合。5.