1、 NANJING UNIVERSITY OF INFORMATION SICENCE&TECHNOLOGY数数据据库库技技术术及及应应用用南京信息工程大学南京信息工程大学 滨江学院滨江学院 计算机系计算机系主讲:刘主讲:刘 生生 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生2课程简介课程简介l1997年教育部高教司颁发的年教育部高教司颁发的“加强非计算机专加强非计算机专业计算机基础教学工作的几点意见业计算机基础教学工作的几点意见”(简称简称155号文件号文件)。l2004年教育部非计算机专
2、业计算机基础课程教年教育部非计算机专业计算机基础课程教学指导委员会制定的学指导委员会制定的关于进一步加强高校计算关于进一步加强高校计算机基础教学的几点意见机基础教学的几点意见(简称简称“白皮书白皮书”)。l明确了计算机基础教学在大学教育中的重要地位明确了计算机基础教学在大学教育中的重要地位;提出了计算机基础教学三个层次的课程体系提出了计算机基础教学三个层次的课程体系,即即计计算机文化基础、计算机技术基础和计算机应用基算机文化基础、计算机技术基础和计算机应用基础。础。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江
3、江学学院院 刘刘生生3课程简介(续)课程简介(续)l第一层次和第二层次的培养目标第一层次和第二层次的培养目标p计算机系统与平台:涉及计算机软件、硬件基本知识、计算机系统与平台:涉及计算机软件、硬件基本知识、操作系统、办公自动化软件、多媒体、网络基础等方操作系统、办公自动化软件、多媒体、网络基础等方面的基础知识。面的基础知识。p计算机程序设计基础:涉及程序设计语言、程序设计计算机程序设计基础:涉及程序设计语言、程序设计基本方法等。基本方法等。p数据分析与信息处理:涉及利用计算机进行数据分析数据分析与信息处理:涉及利用计算机进行数据分析与信息处理的技术和方法,以及数据库技术,多媒体与信息处理的技术
4、和方法,以及数据库技术,多媒体技术等。技术等。p应用系统开发:涉及利用程序设计语言进行编程解决应用系统开发:涉及利用程序设计语言进行编程解决本专业领域涉及到的问题的方法,培养在本专业领域本专业领域涉及到的问题的方法,培养在本专业领域和相关工作中应用计算机的能力和初步的开发能力。和相关工作中应用计算机的能力和初步的开发能力。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生4课程简介(续)课程简介(续)l本课程是高校非计算机专业学生的公共基础课本课程是高校非计算机专业学生的公共基础课程。程。l通过
5、本课程的学习,使学生具备以下技能通过本课程的学习,使学生具备以下技能:p掌握数据库技术的基本概念和理论;p掌握程序设计的基本技能;p掌握面向对象技术的主要内容。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生5主要内容主要内容l第一章 关系型数据库管理系统概述l第二章 Visual Foxpro 语言基础 l第三章 数据库与表的创建和使用 l第四章 视图和查询l第五章 Visual Foxpro程序设计基础 l第六章 Visual FoxPro程序设计的面向对象方法l第七章 表单和控件l第八章
6、 报表和标签l第九章 菜单程序设计l第十章 应用程序开发 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生6教材及参考资料教材及参考资料l Visual FoxPro实用数据库教程,侯荣涛主编,中国电力出版社,2011,第二版lVisual FoxPro教程(2010版),严明,单启成主编,苏州大学出版社,2010 lVisual FoxPro实验指导书(2010版),崔建忠,单启成主编,苏州大学出版社,2010l二级考试试卷汇编(VFP语言分册)江苏省计算机等级考试中心编,苏州大学出版社,2
7、010。l全国计算机等级考试一本通:2级Visual FoxPro(含无纸化真考题库2级公共基础知识)(2013年无纸化考试专用),全国计算机等级考试命题研究中心,未来教育教学与研究中心,人民邮电出版社,2013。l视频教程 http:/ 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生7课时安排课时安排l总课时:68l讲课:51l实习:17l课外实践:2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院
8、刘刘生生8课程考核方式及成绩计算课程考核方式及成绩计算l课程考核方式 考试:笔试 其它:作业+实习+提问+点名l成绩计算 平时成绩:20 作业:10 期中考试:10 期末考试:60 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生9教师个人联系方式教师个人联系方式l姓名:刘生 职称:副教授l讲授课程:数据库技术及应用;计算机网络;网络工程;局域网工程;网络系统集成与设计。l联系方式 18951997698 L QQ:452157128l办公室:ZS609 2023-1-31 第一章第一章 关关
9、系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生10计算机等级考试简介计算机等级考试简介l考试种类p全国、江苏省l等级p一级、二级、三级、四级(全国)l二级考试语言pVB、VFP、C、ACCESS、JAVA等l二级考试方式p上机考试 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生11课程学习方法(建议、推荐)课程学习方法(建议、推荐)l多读p熟读教材,精选12本参考书。l多练p针对等级考试要求,根据课程进度,进行笔试练习(多做题
10、)l多操作p通过在计算机上实际操作,理解VFP的概念、语法、命令、验证对错、提高实际操作水平和学习效率 NANJING UNIVERSITY OF INFORMATION SICENCE&TECHNOLOGY第一章第一章 关系型数据库管理系统关系型数据库管理系统概述概述南京信息工程大学南京信息工程大学 滨江学院学院滨江学院学院 主讲:刘生主讲:刘生数据库技术及应用数据库技术及应用 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生13第一章第一章关系型数据库管理系统概述关系型数据库管理系统概述
11、l1.1 数据库基本概念和基本理论 l1.2 数据模型l1.3 关系数据库l1.4 Visual FoxPro 系统概述l1.5 项目管理器章节内容章节内容 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生14本章学习要求本章学习要求 l了解数据管理的发展过程。l理解数据模型的概念,重点掌握关系模型。l理解掌握关系数据库系统的概念。l了解VFP的编程环境。l掌握项目管理器的概念及作用。教学要求教学要求 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:
12、南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生15教学重点与难点教学重点与难点l教学重点 数据库系统的定义,数据库的特点,关系模型,DBMS,项目管理器。l教学难点 数据库系统的定义,数据库的特点,关系模型。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生161.1 数据库基本概念和基本理论数据库基本概念和基本理论l数据、信息、数据处理l数据管理的发展阶段 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学
13、滨江江学学院院 刘刘生生171.1.1 数据、信息、数据处理数据、信息、数据处理l数据(Data)是自然的、未经过处理的事实l数据的定义p数据是存储在某一媒体上的,能够识别的物理符号 l数据的种类p文本、数值、图形、图像、音频、视频等 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生18l信息p信息是一种已经被加工过的具有使用价值的数据 l信息的特征p信息是有价值的,是可以被感知的。p信息可以通过载体传递,可以通过信息处理工具进行存储、加工、传播、再生和增值。1.1.1 数据、信息、数据处理数
14、据、信息、数据处理 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生19l数据处理 p数据处理是指将数据转换成信息的过程。p指对数据进行采集、存储、检索、加工、变换和传输的过程。p目的和意义在于获取和提炼出对人们有价值的数据。l数据与信息的联系 p信息=数据+处理1.1.1 数据、信息、数据处理数据、信息、数据处理 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生201.1.2 数据管理的发展
15、阶段数据管理的发展阶段l什么是数据管理?对数据进行分类、组织、编码、存储、检索对数据进行分类、组织、编码、存储、检索和维护等操作。和维护等操作。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生211.1.2 数据管理的发展阶段数据管理的发展阶段l数据管理技术发展的动力p应用需求的推动应用需求的推动p计算机硬件的发展计算机硬件的发展p计算机软件的发展计算机软件的发展 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江
16、江学学院院 刘刘生生22数据管理技术的发展过程数据管理技术的发展过程p人工管理阶段人工管理阶段(20世纪世纪40年代中年代中-50年代中年代中)p文件系统阶段文件系统阶段(20世纪世纪50年代末年代末-60年代中年代中)p数据库系统阶段数据库系统阶段(20世纪世纪60年代末年代末-现在现在)1.1.2 数据管理的发展阶段数据管理的发展阶段 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生23一、人工管理阶段一、人工管理阶段l时期p20世纪40年代中-50年代中l产生的背景p应用需求 科学计算p
17、硬件水平 无直接存取存储设备p软件水平 没有操作系统 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生24应用程序与数据的对应关系应用程序与数据的对应关系(人工管理阶段人工管理阶段)应用程序应用程序1数据集数据集1应用程序应用程序2数据集数据集2应用程序应用程序数据集数据集n.人工管理阶段应用程序与数据之间的对应关系人工管理阶段应用程序与数据之间的对应关系 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院
18、院 刘刘生生25人工管理阶段人工管理阶段(续续)l特点特点p数据管理无统一的数据管理软件,主要依靠应用程序管理数据。p数据是面向应用程序的,数据不能共享。p应用程序依赖于数据,不具有数据独立性。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生26二、文件系统阶段二、文件系统阶段l时期时期p2020世纪世纪5050年代末年代末-60-60年代中年代中l产生的背景产生的背景p应用需求应用需求 科学计算、管理科学计算、管理p硬件水平硬件水平 磁盘、磁带磁盘、磁带p软件水平软件水平 有文件系统有文件系
19、统 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生27应用程序与数据的对应关系应用程序与数据的对应关系(文件系统阶段文件系统阶段)应用程序应用程序文件文件应用程序应用程序文件文件2应用程序应用程序文件文件n存取存取方法方法.文件系统阶段应用程序与数据之间的对应关系文件系统阶段应用程序与数据之间的对应关系 应用程序与数据的对应关系应用程序与数据的对应关系(文件系统阶段文件系统阶段)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息
20、工程大学滨学滨江江学学院院 刘刘生生28文件系统阶段文件系统阶段(续续)l特点 p数据以文件形式保存;p程序与数据之间具有相对的独立性;p数据文件之间相互独立、缺乏联系;p数据冗余度大,易造成数据的不一致性;2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生29三、数据库系统阶段三、数据库系统阶段l时期p20世纪60年代末以来l产生的背景p应用背景大规模数据管理p硬件背景大容量磁盘、磁盘阵列p软件背景有专门的数据库管理系统 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统
21、概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生30应用程序与数据的对应关系应用程序与数据的对应关系(数据库系统阶段数据库系统阶段)DBMS应用程序应用程序1应用程序应用程序2数据库数据库数据库系统阶段应用程序与数据之间的对应关系 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生31数据库系统阶段数据库系统阶段l特点 p数据结构化(采用数据模型表示);p数据独立性高,减少数据冗余度;p统一的数据安全保护,提供了数据安全性、完整性等控制功能,以及对数据操作的并发控制
22、、数据的备份与恢复等功能;p实现数据共享,有优良的用户接口。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生321.1.3 数据库系统的组成与结构数据库系统的组成与结构基本概念 l数据库(Database)l数据库管理系统(DBMS)l数据库系统(DBS)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生33一、数据库一、数据库l数据库的定义数据库的定义p数据库数据库(Database,简称简称
23、DB)是是储存储存在计算机在计算机内、内、有组织有组织的、的、可共享可共享的的大量大量数据的集合。数据的集合。l数据库的基本特征数据库的基本特征p数据按一定的数据模型组织、描述和储存数据按一定的数据模型组织、描述和储存p可为各种用户共享可为各种用户共享p冗余度较小冗余度较小p数据独立性较高数据独立性较高p易扩展易扩展 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生34二、数据库管理系统二、数据库管理系统l什么是DBMS?p位于用户与操作系统之间的一层数据管理软件;位于用户与操作系统之间的一层
24、数据管理软件;p是系统软件,是一个大型复杂的软件系统;是系统软件,是一个大型复杂的软件系统;pVisual FoxPro 属于一种关系型数据库管理系属于一种关系型数据库管理系统。统。lDBMS的用途p科学地组织和存储数据、高效地获取和维护数据科学地组织和存储数据、高效地获取和维护数据二、数据库管理系统二、数据库管理系统 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生35DBMS的主要功能的主要功能l数据定义功能数据定义功能p 提供数据定义语言(DDL)p 定义数据库中的数据对象l数据操纵功能
25、数据操纵功能p 提供数据操纵语言(DML)p 实现对数据库的基本操作 (查询、插入、删除和修改)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生36DBMS的主要功能的主要功能l数据组织、存储和管理l数据库的事务管理和运行管理l数据库的建立和维护功能 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生37三、数据库系统三、数据库系统l什么是数据库系统(Database System,简称简称DB
26、S)p实现有组织地、动态地存储大量关联数据,方实现有组织地、动态地存储大量关联数据,方便用户访问的计算机软硬件资源组成的具有管便用户访问的计算机软硬件资源组成的具有管理数据库功能的计算机系统。理数据库功能的计算机系统。l数据库系统的构成p数据库数据库p数据库管理系统(及其开发工具)数据库管理系统(及其开发工具)p应用程序和软件应用程序和软件p数据库管理员数据库管理员 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生38数据库管理系统数据库管理系统数据库管理员数据库管理员各各种种应应用用程程序序
27、操操作作系系统统数据库数据库图1-1 数据库系统示意图 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生39 数据库系统的特点数据库系统的特点l数据结构化l数据的共享性高,冗余度低,易扩充l数据独立性高l数据由DBMS统一管理和控制 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生401.2 数据模型数据模型l在数据库中用数据模型这个工具来抽象、表示和处抽象、表示和处理理现实世界中的数据和信息
28、。数据模型就是现实世界的模拟。l数据模型应满足三方面要求p能比较能比较真实真实地模拟现实世界地模拟现实世界p容易容易为人所为人所理解理解p便于便于在计算机上在计算机上实现实现 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生41两大类数据模型两大类数据模型l数据模型分为两类(分属两个不同的层次)(1)概念模型概念模型 也称信息模型,它是按也称信息模型,它是按用户的观点用户的观点来来对数据和信息建模,用于数据库设计。对数据和信息建模,用于数据库设计。(2)数据模型数据模型 按按计算机系统的观点计
29、算机系统的观点对数据建模,用于对数据建模,用于DBMS实现实现。主要包括主要包括网状模型、层次模型、关系模型网状模型、层次模型、关系模型等等。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生42两大类数据模型两大类数据模型(续续)l客观对象的抽象过程-两步抽象p现实世界中的客观对象抽象为概念模型;p把概念模型转换为某一DBMS支持的数据模型。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生43
30、两大类数据模型两大类数据模型 DBMS支持的数据模型支持的数据模型概念模型概念模型认识认识抽象抽象信息世界信息世界数据世界数据世界现实世界中客观对象的抽象过程现实世界中客观对象的抽象过程现实世现实世界界 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生44l现实世界中的事物及其联系转化为数据的过程:现实世界事物及联系事物集对象性质信息世界概念模型实体集实体属性数据世界数据模型数据(表)记录字段(抽象)(数据表示)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述
31、主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生45一、信息世界中的基本概念一、信息世界中的基本概念(1)实体(Entity)客观存在并可相互区别的事物称为实体。客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念可以是具体的人、事、物或抽象的概念。(2)属性(Attribute)实体所具有的某一特性称为属性。实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。一个实体可以由若干个属性来刻画。(3)码(Key)唯一标识实体的属性集称为码。唯一标识实体的属性集称为码。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述
32、主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生46信息世界中的基本概念信息世界中的基本概念(续续)(4)域(Domain)属性的取值范围称为该属性的域属性的取值范围称为该属性的域。(5)实体型(Entity Type)用实体名及其属性名集合来抽象和刻画同类实用实体名及其属性名集合来抽象和刻画同类实体称为实体型体称为实体型(6)实体集(Entity Set)同一类型实体的集合称为实体集同一类型实体的集合称为实体集学生(学号,姓名,性别,年龄,系名)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨
33、江江学学院院 刘刘生生47信息世界中的基本概念信息世界中的基本概念(续续)(7)联系(Relationship)p现实世界中事物内部以及事物之间的联系在信息世现实世界中事物内部以及事物之间的联系在信息世界界 中反映为实体内部的联系和实体之间的联系。中反映为实体内部的联系和实体之间的联系。p实体之间实体之间的联系通常是指不同实体集之间的联系的联系通常是指不同实体集之间的联系 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生48二、两个实体型之间的联系二、两个实体型之间的联系实体型实体型A联系名联
34、系名实体型实体型B111:1联系联系实体型实体型A联系名联系名1n1:n联系联系实体型实体型A实体型实体型B联系名联系名mnm:n联系联系实体型实体型B用图形来表示两个实体型之间的这三类联系用图形来表示两个实体型之间的这三类联系 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生49二、两个实体型之间的联系二、两个实体型之间的联系l一对一联系(1:1)定义:定义:如果对于实体集如果对于实体集A中的每一个实体,中的每一个实体,实体集实体集B中至多有一个(也可以没有)中至多有一个(也可以没有)实体与
35、之联系,反之亦然,实体与之联系,反之亦然,则称实体则称实体集集A与实体集与实体集B具有一对一联系具有一对一联系,记记为为1:1 实例 :一个班级只有一个正班长一个班级只有一个正班长一个班长只在一个班中任职一个班长只在一个班中任职班级班级班级班级-班长班长班长班长111:1联系联系 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生50两个实体型之间的联系两个实体型之间的联系(续续)l一对多联系(1:n)定义:如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,实体集B中中有有n个
36、实体(个实体(n0)与之联系,反之,对于)与之联系,反之,对于实体集实体集B中的每一个实体,实体集中的每一个实体,实体集A中至多只中至多只有一个实体与之联系,则称有一个实体与之联系,则称实体集实体集A与实体集与实体集B有一对多联系有一对多联系,记为,记为1:n实例:一个班级中有若干名学生,一个班级中有若干名学生,每个学生只在一个班级中学习每个学生只在一个班级中学习班级班级组成组成学生学生1n1:n联系联系 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生51两个实体型之间的联系两个实体型之间的
37、联系(续续)l多对多联系(m:n)定义:如果对于实体集如果对于实体集A中的每一个实体,中的每一个实体,实体集实体集B中有中有n个实体(个实体(n0)与之联)与之联系,反之,对于实体集系,反之,对于实体集B中的每一个实中的每一个实体,实体集体,实体集A中也有中也有m个实体(个实体(m0)与之联系,则称与之联系,则称实体集实体集A与实体与实体B具有多具有多对多联系对多联系,记为,记为m:np实例:课程与学生之间的联系:课程与学生之间的联系:一门课程同时有若干个学生选修一门课程同时有若干个学生选修一个学生可以同时选修多门课程一个学生可以同时选修多门课程课程课程选修选修学生学生mnm:n联系联系 20
38、23-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生52 概念模型的一种表示方法概念模型的一种表示方法l实体联系方法(E-R方法)p用E-R图来描述信息世界的概念模型pE-R方法也称为E-R模型 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生53E-R图图l实体型用矩形表示,矩形框内写明实体名。l 属性用椭圆形表示,并用无向边将其与相应的实体连接起来学生学生教师教师学生学生学号学号年龄年龄性别性别姓
39、名姓名 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生54E-R图图(续续)l联系p用菱形表示,菱形框内写明联系名,并用无向边分用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联别与有关实体型连接起来,同时在无向边旁标上联系的类型(系的类型(1:1、1:n或或m:n)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生55联系的表示方法联系的表示方法实体型实
40、体型A联系名联系名实体型实体型B111:1联系联系实体型实体型A联系名联系名1n1:n联系联系实体型实体型A实体型实体型B联系名联系名mnm:n联系联系实体型实体型B 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生56联系的表示方法示例联系的表示方法示例班级班级班级班级-班长班长班长班长111:1联系联系课程课程选修选修学生学生mnm:n联系联系班级班级组成组成学生学生1n1:n联系联系 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程
41、大南京信息工程大学滨学滨江江学学院院 刘刘生生57联系的属性联系的属性课程课程选修选修学生学生mn成绩成绩v联系的属性联系的属性:联系本身也是一种实体型,也联系本身也是一种实体型,也 可以有属性。如果一个联系具可以有属性。如果一个联系具有属性,则这些属性也要用无有属性,则这些属性也要用无向边与该联系连接起来向边与该联系连接起来 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生58E-R模型例子模型例子班级号班班 级级专业名称年级课课 程程学学 生生学号课程号成绩选修课程有课程名课时数学分姓名性
42、别籍贯班级、学生和课程对应的E-R图 1nmn 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生591.3 关系数据库关系数据库l关系数据库系统采用关系模型作为数据的组织方式 l1970年美国IBM公司的研究员E.F.Codd首次提出了数据库系统的关系模型 l计算机厂商新推出的数据库管理系统几乎都支持关系模型 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生60关系数据模型的基本术语关系数据模
43、型的基本术语 l在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。学 号姓 名年 龄性 别系 名年 级2007004王明19女计算机20072007006黄鹏20男管理20072007008张文斌20女计算机2007学生关系学生关系属性属性(列列)元组元组(行行)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生61l课程关系课程号课程名学分001软件工程3005数据库技术及应用3010高等数学3 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述
44、述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生62学号学号课程号成绩2007004001892007004005762000700601058 选修关系 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生63关系数据模型的基本术语关系数据模型的基本术语p关系(关系(Relation)一个关系对应通常说的一张二维表p元组(元组(Tuple)表中的一行即为一个元组p属性(属性(Attribute)表中的一列即为一个属性,给每一个属性起一个名称即属性名 2023-1-31 第一
45、章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生64关系数据模型的基本术语关系数据模型的基本术语p主码(主码(Key)表中的某个属性组,它可以唯一确定一个元组。p域域(Domain)属性的取值范围。p分量分量元组中的一个属性值。p关系模式关系模式对关系的描述关系名(属性1,属性2,属性n)如:学生(学号,姓名,年龄,性别,系,年级)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生65关系数据模型的一对一联系实例关系数
46、据模型的一对一联系实例l 例1系与系主任间的一对一联系系(系名,系主任,办公地点)2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生66关系数据模型的一对多关系实例关系数据模型的一对多关系实例例2学生、系、系与学生之间的一对多联系:学生(学生(学号学号,姓名,年龄,性别,姓名,年龄,性别,系名系名,年级),年级)系系 (系名系名,系主任,办公地点,系主任,办公地点)外键关系数据模型的一对多联系实例关系数据模型的一对多联系实例 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系
47、统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生67关系数据模型的多对多关系的实例关系数据模型的多对多关系的实例例3学生、课程、学生与课程之间的多对多联系:学生(学生(学号学号,姓名,年龄,性别,系名,年级),姓名,年龄,性别,系名,年级)课程(课程(课程号课程号,课程名,学分),课程名,学分)选修(选修(学号学号,课程号课程号,成绩),成绩)关系数据模型的多对多联系实例关系数据模型的多对多联系实例 2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生682.关系的
48、基本特点(1)在关系模型中,关系具有以下基本特点:l(1)关系必须规范化,属性不可再分割。p规范化是指关系模型中每个关系模式都必须满足一定的要求,最基本的要求是关系必须是一张二维表,每个属性值必须是不可分割的最小数据单元,即表中不能再包含表。l(2)在同一关系中不允许出现相同的属性名。pVisual FoxPro不允许同一个表中有相同的字段名。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生692.关系的基本特点(2)l(3)关系中不允许有完全相同的元组。l(4)在同一关系中元组的次序无关紧要
49、。也就是说,任意交换两行的位置并不影响数据的实际含义。l(5)在同一关系中属性的次序无关紧要。任意交换两列的位置也并不影响数据的实际含义,不会改变关系模式。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生703.关系的操作(1)l关系运算中,关系作为操作数操作数,关系运算符作为操作符操作符。关系运算的结果是一个新的关系。l关系作为一张二维表,其可进行的操作包括:选择、投影、联接。l关系操作根据参与操作的数据表分为:p一元操作符:仅一个数据表参与操作p二元操作符:有二个数据表参与操作 2023-
50、1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生713.关系的操作(2)l选择操作和投影操作为一元操作符l1.选择操作p给定一个关系,从中筛选出满足某种条件的记录(或元组)的过程称为选择。2023-1-31 第一章第一章 关关系型系型数数据据库库管理系管理系统概统概述述主主讲讲:南京信息工程大南京信息工程大学滨学滨江江学学院院 刘刘生生72选择选择l例 查询学生关系中年龄=20 的所有同学学 号姓 名年 龄性 别系 名年 级2007006黄鹏20男管理20072007008张文斌20女计算机2007 2