第一讲数据库基础知识贺金平1-2Monday,September21,2020教学内容1.1数据库基础•1.1.1数据和信息•1.1.2数据处理与数据管理1.2数据库技术的发展•1.2.1人工管理阶段•1.2.2文件系统阶段•1.2.3数据库系统阶段1.3数据模型•1.3.1数据模型概念•1.3.2实体联系模型•1.3.3三种常见的数据模型1.4数据库系统1.5关系模型•1.5.1关系模型术语•1.5.2关系运算1-3Monday,September21,2020目标与重点学习目标•掌握数据库、数据库管理系统、数据库系统概念•掌握理解关系模型相关概念(关系、实体、属性、主键、外键等)•掌握ER图的绘制方法•掌握关系运算(并、交、差,选择、投影、联接)重点与难点•关系模型相关概念的理解•关系运算•E-R图的绘制1-4Monday,September21,20201.1数据库概述1963年,美国Honeywell公司的IDS(IntegratedDataStore)系统投入运行,揭开了数据库技术的序幕。20世纪70年代是数据库蓬勃发展的年代,网状系统和层次系统占据了整个数据库商用市场,而关系系统仅处于实验阶段。20世纪80年代,关系系统由于使用简便以及硬件性能的改善,逐步代替网状系统和层次系统占领了市场。20世纪90年代,关系数据库已成为数据库技术的主流。1-5Monday,September21,20201.1.1数据和信息1.信息•信息(Information)是人们头脑中对现实世界中客观事物以及事物之间联系的抽象反映,它向我们提供了关于现实世界实际存在的事物和联系的有用知识。2.数据•数据是人们用各种物理符号,把信息按一定格式记载下来的有意义符号组合。数据包括数据内容和数据形式.3.数据与信息的关系•数据是信息的具体的表示形式,信息是各种数据所包括的意义。•信息可用不同的数据形式来表现,信息不随数据的表现形式而改变。如:1980年10月1日与1980-10-1•信息和数据的关系是:数据是信息的载体,它是信息的具体表现形式。1-6Monday,September21,20201.1.2数据处理与数据管理1.数据处理•信息处理(InformationProcess)也称为数据处理,它是利用计算机对各种类型的数据进行处理,从而得到有用信息的过程。信息是数据处理的结果。•数据的处理过程包括:数据收集、转换、组织,数据的输入、存储、合并、计算、更新,数据的检索、输出等一系列活动。2.数据管理•计算机数据管理是指计算机对数据的管理方法和手段。•数据管理是指对数据的组织、分类、编码、存储、检索和维护,是数据处理的中心问题。1-7Monday,September21,20201.2数据库技术的发展数据管理经历了四个阶段•人工管理•文件系统•数据库系统•高级数据库系统1-8Monday,September21,20201.2.1人工管理阶段在20世纪50年代中期以前•计算机主要用于科学计算。•硬件状况没有磁盘等直接存取的存储设备;•软件状况是,没有操作系统,•没有管理数据的软件;数据处理方式是批处理。人工管理阶段的数据管理有下列特点:•数据不保存在计算机内。•没有专用的软件对数据进行管理。•只有程序(program)的概念,没有文件(file)的概念。数据的组织方式必须由程序员自行设计与安排。•数据面向程序。即一组数据对应一个程序。1-9Monday,September21,20201.2.2文件系统阶段20世纪50年代后期到60年代中期•计算机不仅用于科学计算,而且还大量用于管理。•硬件上已有了磁盘、磁鼓等直接存取的存储设备;•软件方面,操作系统中已经有了专门的数据管理软件,一般称为文件系统;•处理方式上不仅有了文件批处理,而且能够联机实时处理。传统的文件管理阶段问题•1.数据冗余性(Dataredundancy)•2.数据不一致性(Datainconsistency)•3.数据联系弱(Datapoorrelationship)•4.数据安全性差(Datapoorsecurity)•5.缺乏灵活性(Lackofflexibility)1-10Monday,September21,20201.2.3数据库系统阶段20世纪60年代后期以来,计算机用于管理的规模更为庞大,以文件系统作为数据管理手段已经不能满足应用的需求为解决多用户、多应用共享数据的需求,使数据为尽可能多的应用服务,出现了数据库技术和统一管理数据的专门软件系统——数据库管理系统。1-11Monday,September21,2020(1)标志文件管理数据阶段向现代数据库管理系统阶段转变的三件大事1.1968年,IBM(InternationalBusinessMachine,国际商用机器)公司推出了商品化的基于层次模型的IMS系统2.1969年,美国CODASYL(ConferenceOnDataSystemLanguage,数据系统语言协商会)组织下属的DBTG(DataBaseTaskGroup,数据库任务组)发布了一系列研究数据库方法的DBTG报告,奠定了网状数据模型基础3.1970年,IBM公司研究人员E.F.Codd提出了关系模型,奠定了关系型数据库管理系统基础1-12Monday,September21,2020(2)现代的数据库管理系统阶段特点1.使用复杂的数据模型表示结构2.具有很高的数据独立性3.为用户提供了方便的接口(SQL)4.提供了完整的数据控制功能5.提高了系统的灵活性1-13Monday,September21,20201.2.4高级数据库技术阶段(1)分布式数据库系统(2)对象数据库系统1-14Monday,September21,20201.3数据模型(DataModel)1.3.1数据模型概念数据模型:能表示实体类型及实体间联系的模型称为“数据模型”。用来表示信息世界中的实体及其联系在数据世界中的抽象描述,它描述的是数据的逻辑结构。逻辑数据模型包含三个部分:•数据结构是指对实体类型和实体间联系的表达和实现;•数据操作是指对数据库的检索和更新(包括插入、删除和修改)两类操作;•数据完整性约束给出数据及其联系应具有的制约和依赖规则。1-15Monday,September21,20201.3.2实体联系模型(ER模型)1.实体联系模型•实体-联系模型为数据库建模提供了3个基本的语义概念:实体(Entity)、联系(Relationship)、属性(Attributes)。2.实体:具有相同属性或特征的客观现实和抽象事物的集合。该集合中的一个元组就是该实体的一个实例(instance)3.属性:表示一类客观现实或抽象事物的一种特征或性质。1-16Monday,September21,2020E-R模型4.实体型•属性值的集合表示一个实体,而属性的集合表示一种实体的类型,称为实体型。5.实体联系•实体联系是指实体类型之间的联系,它反映了实体类型之间的某种关联。6.二元实体(型)间联系的种类:•一对一联系(1:1)•一对多联系(1:n)•多对多联系(m:n)1-17Monday,September21,2020二元联系中的联系类型1-18Monday,September21,2020二元联系中的多对多联系1-19Monday,September21,2020实体联系模型E-R方法:“实体-联系方法”(Entity-RelationshipApproach),它是描述现实世界概念结构模型的有效方法,是一种用来在数据库设计过程中表示数据库系统结构的方法。用E-R方法建立的概念结构模型称为E-R模型,或称为E-R图。ER图:(EntityRelationship)实体联系图,是一种可视化的图形方法,它基于对现实世界的一种认识,即客观现实世界由一组称为实体的基本对象和这些对象之间的联系组成,是一种语义模型,使用图型模型尽力地表达数据的意义E-R图基本成分包含实体、属性和联系。E-R图的基本思想就是分别用矩形框、椭圆形框和菱形框表示实体、属性和联系,使用无向边将属性与其相应的实体连接起来,并将联系分别和有关实体相连接,注明联系类型。1-20Monday,September21,2020E-R图的三种元素E-R图的三种基本元素及其图形的表示方法实体属性联系集线段1-21Monday,September21,2020E-R图的绘制步骤首先确定实体类型确定联系类型(1:1,1:N,M:N)把实体类型和联系类型组合成E-R图。确定实体类型和联系类型的属性。确定实体类型的键,在E-R图中属于键的属性名下画一条横线。1-22Monday,September21,2020二元实体联系种类两个实体之间的联系学生选修成绩课程系主任领导系学生属于系11n1mn1-23Monday,September21,2020学生与课程联系的E-R图学生与课程联系的完整E-R图课程名学生学号姓名性别出生日期系别课程课程号学分n成绩m选修1-24Monday,September21,2020图书借阅E-R图图书管理实体联系图图书信息书号书名出版社作者借书证号单价读者信息姓名地址性别借书NM借书日期归还日期1-25Monday,September21,2020E-R图设计原则真实性原则避免冗余原则简单性原则合适性原则:用实体集还是属性合适性原则:用实体集还是联系集。原则:当描述发生在实体集之间的行为时,最好采用联系集。1-26Monday,September21,20201.3.3三种常见的数据模型(1)结构型(层次型—HierarchicalDatabase):树状结构用树形结构表示各类实体以及实体间的联系。层次模型数据库系统的典型代表是IBM公司的IMS(InformationManagementSystems)数据库管理系统。在数据库中,对满足以下两个条件的数据模型称为层次模型。(1)有且仅有一个节点无双亲,这个节点称为“根节点”。(2)其他节点有且仅有一个双亲。①优点:数据结构类似于金字塔,不同层次间的关联性直接简单②缺点:数据纵向发展,横向关系难以建立1-27Monday,September21,2020结构型(层次型—HierarchicalDatabase):树状结构施施研究室施先生孙小小卢拉拉F174SQLServer$500孙小小卢拉拉专长操作系统硬件技术网络技术专长网页设计操作系统数据库作者出版物1-28Monday,September21,2020(2)网络型(网状型—NetworkDatabase)将每条记录当成一个节点,节点与节点之间可以建立关联,形成一个复杂的网状结构。网状数据模型的典型代表是DBTG系统,也称CODASYL系统。在数据库中,对满足以下两个条件的数据模型称为网状模型:•(1)允许一个以上的节点无双亲。•(2)一个节点可以有多于一个的双亲。①优点:避免数据重复性②缺点:关联性复杂1-29Monday,September21,2020(2)网络型(网状型—NetworkDatabase)孙小小F480Linux应用620F174Windows98系统秘笈490F339HomePage制作高手480标标出版公司旗旗出版公司1-30Monday,September21,2020(3)关系型(RelationalDatabase)关系模型中基本数据逻辑结构是一张二维表用二维表结构来表示实体以及实体之间联系的模型称为关系模型。在关系模型中:•通常把二维表称为关系•一个表的结构称为关系模式•表中的每一行称为一个元组,相当于通常的一个记录(值)•每一列称为一个属性,相当于记录中的一个数据项•由若干个关系模式(相当于记录型)组成的集合,就是一个关系模型。1-31Monday,September21,2020关系数据库学生信息表学