《第1章数据库系统概论课件.pptx》由会员分享,可在线阅读,更多相关《第1章数据库系统概论课件.pptx(81页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数据数据库及程序及程序设计n数据数据库用于帮助用用于帮助用户记录数据,管理数数据,管理数据。据。n您可能您可能觉得得这好像不需要一好像不需要一门技技术和和课程,使用列表似乎就程,使用列表似乎就够了(了(记事本,事本,电子表格)子表格)n但是在一些情况下列表可能但是在一些情况下列表可能导致数据不致数据不一致、或一致、或产生其他的生其他的问题n n数据数据库技技术的知的知识变得越来越重要,而得越来越重要,而且它且它们无无处不在不在n n它它们是是电子商子商务和其他基于和其他基于web应用程用程序的重要序的重要组成部分,是企成部分,是企业操作和决策操作和决策支持支持应用程序的核心,用程序的核心,n
2、n成千上万的成千上万的组织和数以百万和数以百万计的个人在的个人在使用数据使用数据库。数据管理技术与我们的生活数据管理技术与我们的生活n(上午上午)学生学生选课、教室排、教室排课:n选课和排和排课已全部已全部实现计算机化,通算机化,通过数据管理技数据管理技术管理着每个人的管理着每个人的课表、每个教室的安排表、每个教室的安排n(中午中午)食堂就餐:食堂就餐:n一卡通的背后是学校几台服一卡通的背后是学校几台服务器每天器每天24小小时运运转,时刻准刻准备处理数据,管理着每个人的理数据,管理着每个人的账户n(下午下午)银行取款:行取款:n银行和金融机构是数据管理技行和金融机构是数据管理技术最早的采最早的
3、采纳者,数者,数据管理据管理软件件记录着用着用户的每一笔交易和存取款数据的每一笔交易和存取款数据n(晚上晚上)网上遨游:网上遨游:n每个大型网站的背后都有一个大型数据每个大型网站的背后都有一个大型数据库:n很多小型很多小型软件也都依件也都依赖于数据管理于数据管理软件:件:QQ,IE,迅雷,迅雷课程目标定位课程目标定位q使学生学会使学生学会“用用”数据库数据库 n掌握数据库的基本知识、基本理论和基本方法掌握数据库的基本知识、基本理论和基本方法;n掌握足够的背景知识,能够创建自己的个人数据库;掌握足够的背景知识,能够创建自己的个人数据库;n或者作为团队的一员参与到更复杂更大型的数据库或者作为团队的
4、一员参与到更复杂更大型的数据库开发过程中;开发过程中;n培养学生的自主学习能力、创新意识、团队协作精培养学生的自主学习能力、创新意识、团队协作精神、写作表达能力等神、写作表达能力等综合素质综合素质;以及从应用中发现;以及从应用中发现问题、提出问题、分析问题和解决问题的能力问题、提出问题、分析问题和解决问题的能力问题求解能力问题求解能力。教材与教材与课时安排:安排:n教材教材数据数据库系系统原理与原理与设计(第第2 2版版)主主编 万常万常选 清清华大学出版社大学出版社n课时安排安排n1 1理理论课时:3636n2 2上机上机课时:1818课程内容:程内容:n第第1章章 数据数据库系系统概概论
5、n第第2章章 关系模型与关系代数关系模型与关系代数n第第3章章 SQL语言言 n第第4章章 数据数据库建模(建模(实体体-联系模型)系模型)n第第5章章 关系数据理关系数据理论与模式求精与模式求精n第第6章章 关系数据关系数据库设计实例例n第第7章章 数据数据库完整性与安全性完整性与安全性 n第第8章章 关系数据关系数据库应用开用开发课程考核:程考核:n1 1平平时作作业及出勤:及出勤:20%20%n2 2大作大作业(分(分组完成,期末收):完成,期末收):10%10%n3.3.上机考上机考试(闭卷):卷):10%10%n4 4期末笔期末笔试(闭卷)卷):60%60%大作业大作业(课后分组完成
6、,每课后分组完成,每2 24 4人为一组,人为一组,期末交期末交)n选题:说明明选题的原因、期望解决的的原因、期望解决的问题,要求有新意要求有新意 (第第3 3周周)n需求分析需求分析 (第第6 68 8周周)n数据数据库概念概念设计、逻辑设计、物理、物理设计 (第第9 91212周周)n应用系用系统简单实现 (第第13131515周周)n设计报告告 (第第1616周周)n提交提交(第第1717周周)数据数据库原理及原理及应用用第第1 1章章 数据数据库系系统概概论目目 录录数据库系统数据库系统1.4数据库系统的作用数据库系统的作用1.1数据模型数据模型1.2数据抽象与数据库三级模式数据抽象与
7、数据库三级模式1.3ACCESS数据库管理系统数据库管理系统1.51.1 1.1 数据库系统的作用数据库系统的作用n数据与数据管理数据与数据管理n数据数据库技技术的的产生与生与发展展n数据数据库应用用1.1.1 数据与数据管理数据与数据管理n数据:数据:描述描述事物事物的的符号符号记录,是人,是人们用于用于记录事物情况的物理符号。事物情况的物理符号。n为了描述客了描述客观事物而用到的数字、字符以及所事物而用到的数字、字符以及所有能有能输入到入到计算机中并能被算机中并能被计算机算机处理的符号理的符号都可以看作是数据。都可以看作是数据。1.1.1 数据与数据管理数据与数据管理数据描述形式数据描述形
8、式n无结构的文本形式描述:无结构的文本形式描述:李天李天乐,男,男,1968年年9月出生,江西南昌人,月出生,江西南昌人,现工作于江西工作于江西财经大学信大学信息学院,教授,主要研究息学院,教授,主要研究兴趣包括趣包括XML数据数据库、Web数据管理。数据管理。n李天李天乐,男,男,1968年年9月,江西南昌,江西月,江西南昌,江西财经大学信息学院大学信息学院n显然,数据的表然,数据的表现形式不能完全表达其内容,其形式不能完全表达其内容,其含含义即即语义需要需要经过解解释才能被正确理解,因此才能被正确理解,因此数据和关于数据的解数据和关于数据的解释是不可分的。是不可分的。n表格形式表格形式(有
9、结构的记录形式有结构的记录形式)描述:描述:n表中一行数据表中一行数据组织在一起便构成一条在一起便构成一条记录,其,其数据的数据的语义已由其所在列的表已由其所在列的表头栏目名解目名解释,因此表格描述的数据称因此表格描述的数据称为结构化数据构化数据。姓名姓名性别性别出生年月出生年月籍贯籍贯工作单位工作单位/部门部门职称职称研究方向研究方向李天乐李天乐男男1968年年9月月 江西南昌江西南昌江西财经大学江西财经大学信息学院信息学院教授教授XML数据库、数据库、Web数据管理数据管理 数据管理数据管理(数据处理数据处理):数数据据处处理理的的基基本本目目的的是是从从大大量量的的、可可能能是是杂杂乱乱
10、无无章章的的、难难以以理理解解的的数数据据中中抽抽取取并并推推导导出出对对于于某某些特定的人们来说有价值、有意义的数据。些特定的人们来说有价值、有意义的数据。支支付付宝宝账账单单保保存存所所有有的的消消费费记记录录(原原始始数数据据),经经过过分分析析和和处处理理,如排序、分类、汇总,就会得到一年的消费统计表以及消费走势图如排序、分类、汇总,就会得到一年的消费统计表以及消费走势图数数据据管管理理:对对数数据据进进行行有有效效的的分分类类、组组织织、编编码码、存存储储、检检索索、维维护护和和应应用用数数据据处处理理的的中中心心问题。问题。数数据据管管理理技技术术的的发发展展及及其其应应用用的的广
11、广度度和和深深度度,极极大地影响着人类社会发展的进程。大地影响着人类社会发展的进程。1.1.2 数据管理技数据管理技术的的产生与生与发展展数据管理技数据管理技术是因是因为数据管理任数据管理任务的的需要而需要而产生的。生的。三个三个阶段:段:1人工管理人工管理阶段段2文件系文件系统阶段段3数据数据库系系统阶段段人工管理人工管理阶段:段:n20世世纪50年代中期以前的年代中期以前的这段段时间。n计算机算机还很很简陋,尚没有完整的操作系陋,尚没有完整的操作系统。n数据是面向数据是面向应用程序的用程序的,一个数据集只能,一个数据集只能对应于于一个程序,程序与数据之一个程序,程序与数据之间的关系如的关系
12、如图1-1所示。所示。n数据需要由数据需要由应用程序自己定用程序自己定义和管理和管理,没有相,没有相应的的软件系件系统专门负责数据的管理工作。数据的管理工作。n当多个当多个应用程序涉及某些相同的数据用程序涉及某些相同的数据时,必,必须由由各自的各自的应用程序分用程序分别定定义和管理和管理这些数据,些数据,无法无法共享利用共享利用,因此,因此存在大量冗余数据存在大量冗余数据。人工管理人工管理阶段:段:应用程序用程序与数据之与数据之间的的对应关系关系程序程序与数与数据是一据是一个整体个整体人工管理人工管理阶段的特点段的特点n(1 1)数据不保存在)数据不保存在计算机中(算机中(外存只有外存只有纸带
13、、卡片、磁、卡片、磁带,没有直接存取,没有直接存取设备)。n(2 2)没有)没有专用的用的软件系件系统管理数据,数据管理数据,数据由由应用程序自己管理。用程序自己管理。n(3 3)数据是面向)数据是面向应用的,不具有独立性。用的,不具有独立性。n(4 4)数据不共享,冗余量大。)数据不共享,冗余量大。n20世世纪50年代后期到年代后期到60年代中期的年代中期的这段段时间。n计算机除了算机除了应用于科学用于科学计算外,已开始算外,已开始应用于用于数据数据管理管理n在操作系在操作系统之上建立的之上建立的文件系统文件系统已已经成熟并被广泛成熟并被广泛应用,用,数据由数据由专门的的软件件进行行统一管理
14、一管理。n对于一个特定的于一个特定的应用用程序程序,数据被集中数据被集中组织存放在存放在多个数据文件(以后多个数据文件(以后简称称为文件)或文件文件)或文件组中中,并,并针对该文件文件组来开来开发特定的特定的应用程序。用程序。n利用利用“按文件名按文件名访问,按,按记录进行存取行存取”的管理技的管理技术,可以,可以对文件文件进行行记录的修改、插入和的修改、插入和删除等操除等操作。作。文件系文件系统阶段:段:文件系文件系统阶段:段:n文件系统的主要特点文件系统的主要特点n文件系文件系统实现了了文件内的文件内的结构化构化,即一个文件内的数据是,即一个文件内的数据是按按记录进行行组织的,的,这样的数
15、据是有的数据是有结构的构的(语义的的)。n整体上整体上还是无是无结构构的,即的,即多个文件之间是相互独立多个文件之间是相互独立的,无的,无法建立法建立全局的全局的结构化数据管理模式。构化数据管理模式。n程序和数据之程序和数据之间由文件系由文件系统提供的存取方法提供的存取方法进行行转换,程,程序序员可以不必可以不必过多地考多地考虑物理物理细节。n由于数据在存由于数据在存储上的改上的改变不一定反映在程序上,因此不一定反映在程序上,因此应用用程序与数据之程序与数据之间有了一定的有了一定的物理独立性物理独立性。n20世世纪60年代后期以来年代后期以来n数据管理数据管理对象的象的规模越来越大,模越来越大
16、,应用范用范围越来越广,多种越来越广,多种应用程序共享数据的要求越来越用程序共享数据的要求越来越强烈烈n数据数据库管理系管理系统(DBMS)是由一个是由一个相互关相互关联的数据的集合的数据的集合和一和一组用以用以访问、管理和控制、管理和控制这些数据的程序些数据的程序组成成n这个数据集合通常称个数据集合通常称为数据数据库(database,DB),其中包含,其中包含了关于某个信息系了关于某个信息系统的所有信息的所有信息nDBMS是位于用是位于用户与操作系与操作系统之之间的一的一层数据管理数据管理软件件,它提供一个可以它提供一个可以方便且高效地存取、管理和控制数据方便且高效地存取、管理和控制数据库
17、信信息的息的环境境nDBMS和操作系和操作系统一一样,都是,都是计算机的基算机的基础软件(系件(系统软件),也是一个大型复件),也是一个大型复杂的的软件系件系统数据数据库系系统阶段:段:数据数据库系系统阶段:段:n数据库管理系统的主要特点数据库管理系统的主要特点n数据结构化数据结构化。数据。数据库管理系管理系统实现数据的数据的整体结整体结构化构化,这是数据是数据库的主要特征之一,也是数据的主要特征之一,也是数据库管理系管理系统与文件系与文件系统的的本本质区区别n数据不数据不仅仅是是内部内部结构化构化,而是将,而是将数据以及数据之数据以及数据之间的的联系系统一管理起来一管理起来,使之,使之结构化
18、。构化。学生、课程、学生成绩文件结构学生、课程、学生成绩文件结构姓名姓名性别性别学号学号出生日期出生日期所学专业所学专业家庭住址家庭住址联系电话联系电话学生文件学生文件Student的记录结构的记录结构课程号课程号课程名称课程名称教材名称教材名称学时学时学分学分课程文件课程文件Course的记录结构的记录结构学号学号课程号课程号学期学期成绩成绩学生成绩文件学生成绩文件Score的记录结构的记录结构在数据在数据库中的数据不是中的数据不是仅仅针对某一个某一个应用,而是面向全用,而是面向全组织的的所有所有应用。用。例如,一个学校的信息系例如,一个学校的信息系统中不中不仅要考要考虑教教务处的学的学生成
19、生成绩管理,管理,还要考要考虑学生学生处的学籍注册管理、学生的学籍注册管理、学生奖惩管理、学生家庭成管理、学生家庭成员管理,以及管理,以及财务处的学生的学生缴费管理;同管理;同时还要考要考虑研究生院的研究生管理、科研研究生院的研究生管理、科研处的科研管理、人事的科研管理、人事处的教的教职工人事管理和工工人事管理和工资管理管理等。等。因此,学校信息系因此,学校信息系统中的学生数据要面向全校各个中的学生数据要面向全校各个职能管理部能管理部门和院系的和院系的应用,而不用,而不仅仅是教是教务处的一个的一个学生成学生成绩管理管理应用。用。某校信息管理系统中的学生数据某校信息管理系统中的学生数据姓名姓名性
20、别性别学号学号出生日期出生日期所学专业所学专业 学生基本情况学生基本情况课程号课程号课程名称课程名称 课程课程学号学号课程号课程号学期学期成绩成绩 学生成绩学生成绩日期日期学号学号管理员管理员 学生学籍注册学生学籍注册日期日期学号学号奖惩条目奖惩条目 学生奖惩学生奖惩序号序号学号学号与本人关系与本人关系 学生家庭成员学生家庭成员成员姓名成员姓名详细情况详细情况日期日期学号学号管理员管理员 学生缴费学生缴费金额金额数据数据库系系统阶段的特点段的特点n(1 1)数据)数据结构化。构化。n(2 2)数据共享性高、冗余度低。)数据共享性高、冗余度低。n数据数据库管理系管理系统从整体角度描述和从整体角度
21、描述和组织数据数据,数据不再是面向某个,数据不再是面向某个应用,而是用,而是面向整个系面向整个系统n因此,数据可以因此,数据可以被多个用被多个用户、多个、多个应用用共享使用共享使用数据数据库系系统阶段的特点段的特点n(3 3)数据独立性高。)数据独立性高。n数据独立数据独立是指是指数据的使用数据的使用(即即应用程序用程序)与与数据的数据的说明明(即数据的即数据的组织结构与存构与存储方式方式)分离分离n这样,应用程序用程序只需要考只需要考虑如何使用数如何使用数据据,而无,而无须关心数据关心数据库中的中的数据是如何数据是如何构造和存构造和存储的的数据数据库系系统阶段的特点段的特点n(4 4)数据由
22、)数据由DBMSDBMS集中管理(可以保集中管理(可以保证数据的数据的安全性、完整性、并安全性、完整性、并发控制、数据恢复)控制、数据恢复)n(5 5)方便的用)方便的用户接口接口 n用用户可以使用交互式的命令可以使用交互式的命令语言言对数据数据库进行操作,行操作,也可以将高也可以将高级语言和言和SQL语言言结合起来使用,合起来使用,1.1.3 数据库应用数据库应用n图书馆管理图书馆管理n用于存用于存储图书馆的的馆藏藏资料料(图书、期刊等、期刊等)、读者者(教教师、学生等学生等)信息,以及信息,以及图书和期刊的借和期刊的借阅、归还记录等,方便等,方便读者者查找找资料,方便管理人料,方便管理人员
23、办理理图书和期刊的借和期刊的借阅、归还和催和催还等手等手续,提高,提高图书馆管理水平管理水平 n书店管理书店管理n用于存用于存储员工、客工、客户信息以及信息以及图书采采购、库存、存、销售售记录等,提高等,提高图书的采的采购、库存和存和销售管理水平,方便售管理水平,方便书店的店的账务处理理 n教学管理教学管理n用于存用于存储各各专业教学教学计划、教划、教师和学生信息、教室信息、和学生信息、教室信息、教材信息、教教材信息、教师开开课以及学生以及学生选课记录等,提高排等,提高排课、选课、成、成绩管理、管理、毕业管理效率管理效率 n科研管理科研管理n用于存用于存储教教师信息、科研成果信息、科研成果记录
24、等,方便科研成果的考等,方便科研成果的考核、核、检索和索和统计工作工作 1.1.3 数据库应用数据库应用n银行管理银行管理n用于存用于存储客客户信息、存款信息、存款账户和和贷款款账户记录以及以及银行之行之间的的转账交易交易记录等,提高存款、等,提高存款、贷款管理水平,加速款管理水平,加速资金流金流转和和银行行结算算n售票管理售票管理n用于存用于存储客客户信息和客运信息和客运飞机、火机、火车、汽、汽车班次等信息,班次等信息,以及以及订票、改票、改签和退票和退票记录等,提高交通客运管理水平,等,提高交通客运管理水平,方便客方便客户订票票 n电信管理电信管理n用于存用于存储客客户信息、通信息、通话记
25、录等,自等,自动结算算话费,维护预付付电话卡的余卡的余额,产生每月生每月账单,提高,提高电信管理水平信管理水平n证券管理证券管理n用于存用于存储客客户信息以及股票、信息以及股票、债券等金融票据的持有、出券等金融票据的持有、出售和售和买入信息,也可以存入信息,也可以存储实时的市的市场交易数据,以便客交易数据,以便客户能能够进行行联机交易,公司能机交易,公司能够进行自行自动交易和交易和结算算 1.1.3 数据库应用数据库应用n销售管理销售管理n用于存用于存储客客户、商品信息以及、商品信息以及销售售记录,以便能,以便能够实时的的订单跟踪、跟踪、销售售结算、算、库存管理和商品推荐存管理和商品推荐 n制
26、造业管理制造业管理 n用于存用于存储客客户信息、生信息、生产工工艺信息,以及采信息,以及采购、生、生产、入、入库、出、出库记录等,等,实现供供应链管理,跟踪工厂的管理,跟踪工厂的产品生品生产情况,情况,实现零部件、半成品、零部件、半成品、产成品的成品的库存管理等存管理等n固定资产管理固定资产管理n用于存用于存储客客户信息、部信息、部门信息和信息和员工信息,固定工信息,固定资产的采的采购记录、领用用记录和和报废记录等,自等,自动计提固定提固定资产折旧,折旧,提供各种固定提供各种固定资产报表表n人力资源管理人力资源管理n用于存用于存储部部门信息、信息、员工信息,以及出勤工信息,以及出勤记录、计件件
27、记录等,自等,自动计算算员工的工工的工资、所得税和津、所得税和津贴,产生工生工资单 目目 录录数据库系统数据库系统1.4数据库系统的作用数据库系统的作用1.1数据模型数据模型1.2数据抽象与数据库三级模式数据抽象与数据库三级模式1.3ACCESS数据库管理系统数据库管理系统1.51.2 1.2 数据模型数据模型数数据据模模型型就就是是对对现现实实世世界界的的模模拟拟。也也就就是是把把现现实实世世界界中中具具体体的的人人、物物、活活动动、概概念念等等用用数数据据模模型型这这个工具来进行抽象、表示和处理。个工具来进行抽象、表示和处理。数据模型应该满足数据模型应该满足3方面的要求:方面的要求:一是能
28、比较真是的模拟显示世界;一是能比较真是的模拟显示世界;二是容易被人所理解;二是容易被人所理解;三是便于在计算机上实现;三是便于在计算机上实现;一个数据模型要很好的同时满足一个数据模型要很好的同时满足3个要求是很困个要求是很困难的,因此,在数据库管理系统中针对不同的使用对难的,因此,在数据库管理系统中针对不同的使用对象和应用目的,采用不同的数据模型。象和应用目的,采用不同的数据模型。1.2 1.2 数据模型数据模型n根据数据抽象的不同级别,将数据模型划分为根据数据抽象的不同级别,将数据模型划分为3类:类:n概念概念模型模型n逻辑模型逻辑模型n物理模型物理模型数据模型的分类数据模型的分类n概念模型
29、概念模型n概念概念层次的数据模型,也称次的数据模型,也称为信息模型,按用信息模型,按用户的的观点或点或认识对现实世界的数据和信息世界的数据和信息进行建模;行建模;n主要用于数据主要用于数据库设计强调语义表达功能强调语义表达功能 n常用的概念模型有常用的概念模型有实体体-联系模型系模型(E-R模型模型)n E-R模型基于模型基于对现实世界的如下世界的如下认识:现实世界是由现实世界是由一组称作一组称作实体体的基本对象以及的基本对象以及这些些对象象间的的联系系构成构成n实体体是是现实世界中可区世界中可区别于其他于其他对象的一件象的一件“事情事情”或一个或一个“物体物体”n如,一个如,一个学生学生、一
30、个、一个部门部门、一个、一个教室教室、一种、一种商品商品、一本一本书书、一、一门课程课程,以及一次,以及一次选课选课、采购采购、销售销售、存款存款业务(记录)等都是等都是实体体数据模型的分类数据模型的分类n逻辑模型逻辑模型n用于描述数据用于描述数据库数据的整体数据的整体逻辑结构,是按构,是按计算机系算机系统的的观点点对数据建模,即数据的数据建模,即数据的计算机算机实现n是用是用户通通过数据数据库管理系管理系统看到的看到的现实世界,是按世界,是按计算机算机系系统的的观点点对数据建模,即数据的数据建模,即数据的计算机算机实现形式形式n主要用于主要用于DBMS的的实现。它既要考。它既要考虑用用户容易
31、理解,又要容易理解,又要考考虑便于便于DBMS实现n不同的不同的DBMS提供不同的提供不同的逻辑数据模型数据模型n层次模型次模型(hierarchical model)n网状模型网状模型(network model)n关系模型关系模型(relational model)n数据模型的分类数据模型的分类n物理模型物理模型n用来描述数据的物理存用来描述数据的物理存储结构和存取方法构和存取方法n物理物理层是数据抽象的最低是数据抽象的最低层n例如,一个数据例如,一个数据库中的中的数据和索引数据和索引是存放在不同的是存放在不同的数据段上数据段上还是相同的数据段上;数据的是相同的数据段上;数据的物理物理记录
32、格格式式是是变长的的还是定是定长的;数据是否的;数据是否压缩存存储n物理模型的具体物理模型的具体实现是是DBMS的任的任务,数据,数据库设计人人员要了解和要了解和选择物理模型,一般用物理模型,一般用户则不必考不必考虑物理物理层细节n适用对象适用对象n从从现实世界到概念模型的世界到概念模型的转换是由是由数据数据库设计人人员完成完成n从概念模型到从概念模型到逻辑模型的模型的转换可以由可以由数据数据库设计人人员完成,也可以用完成,也可以用数据数据库设计工具工具协助助设计人人员完成完成n从从逻辑模型到物理模型的模型到物理模型的转换一般由一般由DBMS来完来完成成 概念模型概念模型信息世界信息世界图图1
33、-6 现实世界中客观对象的抽象过程现实世界中客观对象的抽象过程现实世界现实世界认识认识抽象抽象DBMS支持的支持的逻辑模型逻辑模型DBMS支持的支持的物理模型物理模型逻辑机器世界逻辑机器世界物理机器世界物理机器世界数据模型(逻辑数据模型)的组成要素数据模型(逻辑数据模型)的组成要素n数据模型的数据模型的组成要素有:成要素有:n数据结构数据结构:描述数据描述数据库的的组成成对象以及象以及对象之象之间的的联系系,例如:关系模型中的域、属性、,例如:关系模型中的域、属性、码;n数据操作数据操作:指指对数据数据库中各种中各种对象象(型型)的的实例例(值)允允许执行的操作集合,包括操作及有关的操作行的操
34、作集合,包括操作及有关的操作规则,例如:例如:查询、更新的操作、更新的操作规则、以及、以及实现操作的操作的语言言n数据完整性约束数据完整性约束:一一组数据完整性数据完整性规则,是数据、,是数据、数据数据语义和数据和数据联系所具有的制系所具有的制约和依存和依存规则,包,包括数据括数据结构完整性构完整性规则和数据操作完整性和数据操作完整性规则;例;例如:百分制成如:百分制成绩只能取只能取0-100;上;上课学生人数不能学生人数不能超超过教室的容量教室的容量层次模型层次模型n层次模型是数据次模型是数据库管理系管理系统中最早出中最早出现的模型的模型n典型代表是典型代表是1968年年IBM公司推出的第一
35、个大型商用公司推出的第一个大型商用数据数据库管理系管理系统IMS(information management system)n层次模型层次模型用用树形形结构来表示各构来表示各类实体体以及以及实体体间的的联系系。实体用体用记录来表示,来表示,实体体间的的联系用系用链接接(可看可看作指作指针)来表示来表示n满足如下两个条件的基本足如下两个条件的基本层次次联系的集合系的集合为层次模型:次模型:n有且只有一个有且只有一个结点没有双点没有双亲结点,点,这个个结点称点称为根根结点点n根以外的其他根以外的其他结点有且只有一个双点有且只有一个双亲结点点 图图1-7 一个简单的教学管理系统的一个简单的教学管理
36、系统的层次数据模型层次数据模型职工号职工号姓名姓名研究方向研究方向Employee班级号班级号年级年级专业专业Class系编号系编号系名系名办公地点办公地点Department学号学号姓名姓名性别性别Student出生日期出生日期层次模型层次模型 图图1-8 一个简单的教学管理系统的一个简单的教学管理系统的实例实例值值E0501万家乐万家乐数据库数据库EmployeeC012008计算机计算机ClassD05计算机系计算机系 信息大楼信息大楼DepartmentE0502吴文君吴文君信息检索信息检索E0503廖兴旺廖兴旺操作系统操作系统C022009信息系统信息系统StudentS090204
37、 王红敏王红敏女女06/12/9206/12/92S090212 刘宏昊刘宏昊男男09/25/9109/25/91S090228 李李 立立女女02/18/9202/18/92StudentS080125 李小勇李小勇男男11/26/9011/26/90S080148 黄小红黄小红女女05/21/9105/21/91 E0803王国方王国方数据结构数据结构C032008电子商务电子商务D08信息系信息系信息大楼信息大楼E0805张长工张长工编译原理编译原理E0809李小红李小红运筹学运筹学C042009信息系统信息系统S090404 刘月高刘月高女女06/12/9206/12/92S09041
38、2 王永民王永民男男09/25/9109/25/91S090428 英达成英达成女女02/18/9202/18/92S080325 万元户万元户男男11/26/9011/26/90S080348 李李 兴兴女女05/21/9105/21/91层次模型层次模型n层次模型的主要优点层次模型的主要优点:n数据数据结构比构比较简单清晰清晰n查询效率高效率高n提供了良好的数据完整性支持提供了良好的数据完整性支持n层次模型的主要缺点层次模型的主要缺点:n现实世界中很多世界中很多联系是非系是非层次的次的(如如多多对多多联系系),n查询孩子孩子结点必点必须通通过双双亲结点点n由于由于结构构严密,密,层次命令次
39、命令趋于程序化于程序化 网状模型网状模型n典型代表是典型代表是DBTG系系统,它是,它是20世世纪70年代由数据系年代由数据系统语言言研究会研究会(conference on data system language,CODASYL)下属的数据下属的数据库任任务组(data base task group,DBTG)提出的一个系提出的一个系统方案方案 n满足如下两个条件的基本足如下两个条件的基本层次次联系的集合称系的集合称为网状模型网状模型n允允许一个以上的一个以上的结点无双点无双亲n一个一个结点可以有多个双点可以有多个双亲n网状模型是一种比网状模型是一种比层次模型更具普遍性的次模型更具普遍性
40、的结构,它去掉了构,它去掉了层次模型的两个限制,次模型的两个限制,还允允许两个两个结点之点之间有多种有多种联系系(称称为复复合合联系系)。因此,网状模型可以更直接地去描述。因此,网状模型可以更直接地去描述现实世界世界 网状模型网状模型n网状模型的主要优点网状模型的主要优点:n能能够更更为直接地描述直接地描述现实世界世界n具有良好的性能,存取效率具有良好的性能,存取效率较高高n网状模型的主要缺点网状模型的主要缺点:n结构比构比较复复杂,且随着,且随着应用用规模的模的扩大,数据大,数据库的的结构会构会变得越来越复得越来越复杂,不利于最,不利于最终用用户掌握掌握n操作操作语言比言比较复复杂 关系模型
41、关系模型n1970年美国年美国IBM公司公司San Jose研究室的研究研究室的研究员E.F.Codd首次提出了数据首次提出了数据库管理系管理系统的关系模型,开的关系模型,开创了数据了数据库关系方法和关系数据理关系方法和关系数据理论的研究,的研究,为数据数据库技技术奠定了理奠定了理论基基础。n由于由于E.F.Codd的杰出工作,他于的杰出工作,他于1981年年获得得ACM图灵灵奖 n20世世纪80年代以来,年代以来,计算机厂商新推出的数据算机厂商新推出的数据库管管理系理系统几乎都支持关系模型,数据几乎都支持关系模型,数据库领域当前的研究域当前的研究工作也都是以关系方法工作也都是以关系方法为基基
42、础 n本本书的重点也主要是的重点也主要是讲授关系数据授关系数据库 关系模型关系模型n关系数据模型的关系数据模型的数据结构数据结构n关系模型中的常用关系模型中的常用术语:n关系关系(relation):一个关系:一个关系对应一一张二二维表,每一个关表,每一个关系有一个名称,即关系名;系有一个名称,即关系名;n元组元组(tuple):表中的一行称:表中的一行称为一个元一个元组;n属性属性(attribute):表中的一列称:表中的一列称为一个属性,每一个一个属性,每一个属性有一个名称,即属性名;属性有一个名称,即属性名;n域域(domain):属性的取:属性的取值范范围;n码码(key):也称:也
43、称为码键码键。表中的某个属性或属性。表中的某个属性或属性组,它它可以唯一地确定关系中的一个元可以唯一地确定关系中的一个元组,如,如关系关系Student中中的的学号学号,它可以唯一地,它可以唯一地标识一个学生一个学生;n分量分量(component):元:元组中的一个属性中的一个属性值;关系模型中的常用关系模型中的常用术语:n外码外码(foreign key):表中的某个属性或属性:表中的某个属性或属性组,用来描述本关系中的元用来描述本关系中的元组(实体体)与另一关系中的元与另一关系中的元组(实体体)之之间的的联系系n外码外码的取的取值范范围对应于另一个关系的于另一个关系的码的取的取值范范围的
44、子集的子集n如如关系关系Score中的中的学号学号,它描述了,它描述了关系关系Score与与关系关系Student的的联系系(即哪个学生即哪个学生选修了修了课程程),因此因此学号学号是是关系关系Score的的外码外码n同理,同理,课程号课程号也是也是关系关系Score的的外码外码,它描述了,它描述了关系关系Score与与关系关系Course的的联系系(即哪即哪门课程被程被学生学生选修了修了)n关系模式关系模式(relational schema):通:通过关系名和属关系名和属性名列表性名列表对关系关系进行描述,即二行描述,即二维表的表的表表头部分部分(表格的描述部分表格的描述部分)n关系模式的
45、一般形式:关系模式的一般形式:n关系名关系名(属性名属性名1,属性名,属性名2,属性名,属性名n)n关系关系Student、Course和和Score可分可分别描述描述为:nStudent(学号学号,姓名,性,姓名,性别,出生日期,所学,出生日期,所学专业)nCourse(课程号程号,课程名称,学程名称,学时,学分,学分)nScore(学号学号,课程号程号,学期学期,成,成绩)n说明:明:带下划下划线的属性的属性为码码属性,属性,斜体斜体的属的属性性为外码外码属性属性 图图1-9 关系模型的数据结构关系模型的数据结构Student关系关系学号学号姓名姓名性别性别 出生日期出生日期所学专业所学专
46、业0701001李小勇李小勇男男 1990-12-21计算机计算机0701008王王 红红男男 1992-04-26计算机计算机0802002刘方晨刘方晨女女 1990-11-11信息系统信息系统0802005王红敏王红敏女女 1990-10-01信息系统信息系统0703045王王 红红男男 1992-04-26会计学会计学0703010李宏冰李宏冰女女 1992-03-09会计学会计学 Course关系关系课程号课程号课程名称课程名称 学时学时学分学分CS005数据库系统概论数据库系统概论644CS012操作系统操作系统 805CP001基础会计基础会计 483 Score关系关系学号学号课
47、程号课程号学期学期成绩成绩0701001CS005072920701001CS012081880701008CS005072860701008CS012081930701008CP001081780802002CS005082850802002CP001091950802005CS005082720802005CP001091880703045CP001072840703010CP00107292关系模型关系模型n关系数据模型的关系数据模型的操作操作n关系数据模型的操作主要包括关系数据模型的操作主要包括查询和和更新更新(插入插入、删除除和和修改修改)n操作操作对象和操作象和操作结果都是关系果都
48、是关系(元元组的集合的集合)n关系模型关系模型:存取路径是透明的存取路径是透明的,用,用户只要指出只要指出“干什么干什么”或或“找什么找什么”,不必,不必说明明“怎么干怎么干”或或“怎么找怎么找”,从而大大地,从而大大地提高了数据的独立性提高了数据的独立性,提高了提高了软件的开件的开发和和维护效率效率n关系数据模型的关系数据模型的完整性约束完整性约束n实体完整性体完整性、参照完整性参照完整性和和用用户自定自定义完整性完整性 关系模型关系模型n关系数据模型的优点关系数据模型的优点:n严格的数学基格的数学基础:有关系代数作:有关系代数作为语言模型,有言模型,有关系数据理关系数据理论作作为理理论基基
49、础n概念概念单一一:无:无论实体体还是是实体之体之间的的联系系都是用都是用关系来表示,关系来表示,对数据数据(关系关系)的操作的操作(查询和更新和更新)结果果还是关系。所以其数据是关系。所以其数据结构构简单、清晰,用、清晰,用户易懂易用易懂易用n存取路径透明存取路径透明:具有更高的:具有更高的数据独立性数据独立性、更好的、更好的安全保密性安全保密性,简化了程序化了程序员的工作,提高了的工作,提高了软件件的开的开发和和维护效率效率目目 录录数据库系统数据库系统1.4数据库系统的作用数据库系统的作用1.1数据模型数据模型1.2数据抽象与数据库三级模式数据抽象与数据库三级模式1.3ACCESS数据库
50、管理系统数据库管理系统1.51.3 1.3 数据抽象与数据库三级模式数据抽象与数据库三级模式nDBMS(数数据据库库管管理理系系统统)的的一一个个主主要要目目的的就就是是隐隐藏藏关关于于数数据据存存储储和和维维护护的的某某些些细细节节,为为用用户户提提供供数数据据在在不不同同层层次次上上的的视视图图,即即数数据据抽抽象象,方方便便不不同同的的使使用用者者可可以以从从不不同同的的角角度度去去观观察察和和利利用用数数据据库库中中的的数据数据数据抽象数据抽象n物理层抽象物理层抽象n最低最低层次的抽象,描述数据次的抽象,描述数据实际上是上是怎怎样存存储的的,有复有复杂的数据的数据结构。例如:构。例如: