1计算机科学导论第7章信息系统2计算机科学导论本章要点:◆信息系统概念◆数据库系统基本概念◆关系数据库概念◆数据库查询语言◆关系数据库设计◆数据库管理◆常用数据库管理系统◆数据库新发展3计算机科学导论7.1信息系统概述1.信息•信息的概念:信息通常指经过加工了的、有一定意义和价值、且具有特定形式的数据,这些数据能够反映出客观世界事物的内在联系及本质,从而影响信息获取者的行为或决策。•信息的特点:时间性、真实性、易于理解、多样性、传播性、不确定性。4计算机科学导论7.1信息系统概述2.信息系统“信息系统是一个由人员、活动、数据、网络和技术等要素组成的集合,主要目的是对组织的业务数据进行采集、存储、处理和交换,以支持和改善组织的日常业务运作,满足管理人员解决问题和制定决策以及对信息的各种需求”。5计算机科学导论7.2数据库系统概述1.基本概念•数据:数据(data)描述事物的符号记录称为数据。数据是数据库中存储的基本对象。数据的种类很多,可以包括文字、数字、声音、图形、图象等。•数据库:以一定的组织方式存储的相互关联的数据的集合,就是数据库。这些数据能够长期存储、统一管理和控制,且能够被不同用户所共享,具有数据独立性及最小冗余度。6计算机科学导论7.2数据库系统概述•数据库管理系统:是对数据库进行管理的软件系统,是数据库系统的核心。它位于计算机系统中操作系统与用户或应用程序之间,主要功能包括:数据定义、数据操纵、数据组织、存储和管理、数据库的建立和维护、数据通信接口。•数据库管理员:专门对数据库进行规划、设计、管理、协调和维护的工作人员。7计算机科学导论7.2数据库系统概述•数据库系统:数据库系统(DataBaseSystem:DBS)是DB、DBMS、DBA、用户和计算机系统CS(ComputerSystem)的总和。8计算机科学导论7.2数据库系统概述2.数据库管理技术的发展•人工管理阶段:数据不长期保存,应用程序管理数据,数据不能共享,数据不具有独立性。•文件系统阶段:数据可以长期保存,文件系统管理数据,数据共享性差,冗余度大,数据独立性差。•数据库系统阶段:数据结构化,数据共享性高、冗余度低、易扩充,数据独立性高,有专门的数据库管理系统。9计算机科学导论7.2数据库系统概述3.数据模型•概念模型:也称信息模型,是按照用户的观点对数据和信息建模,与计算机系统无关,是概念级的模型,通常用于数据库的设计,它是数据库设计人员和用户之间进行交互的一种形式化描述。(1)基本概念①实体现实世界客观存在并可相互区别的事物称为实体。实体可以是具体的人、事、物,也可以是抽象的概念或联系。10计算机科学导论7.2数据库系统概述②属性实体所具有的某一特性称为属性。一个实体通常由若干个属性描述。③码惟一标识一个实体的属性或属性组称为码。④域属性的取值范围称为域。⑤实体型对具有相同属性的若干实体,用实体名及其属性名的集合来抽象和描述同类实体,称为实体型。⑥实体集同型实体的集合称为实体集。11计算机科学导论7.2数据库系统概述⑦联系不同实体集之间的联系,实体间联系通常有一对一、一对多、多对多三种。一对一联系:记为“1:1”。一对多联系:记为“1:M”。多对多联系:记为“M:N”。12计算机科学导论7.2数据库系统概述(1)概念模型的表示用矩形表示实体型;用椭圆表示属性;用菱形表示联系,并标示出联系的类型课程学生选修学号姓名年龄性别系别课程号学分课程名成绩mn13计算机科学导论7.2数据库系统概述•数据模型:也称信息模型,是按照用户的观点对数据和信息建模,与计算机系统无关,是概念级的模型,通常用于数据库的设计,它是数据库设计人员和用户之间进行交互的一种形式化描述。(1)层次模型有且只有一个节点没有双亲,该节点为根节点;根以外的其他节点有且只有一个双亲节点。(2)网状模型在层次模型的基础上,允许节点无父节点,或者有多个父节点。(3)关系模型以关系代数为基础,实体间通过公共属性实现联系,与数据的物理结构无关。14计算机科学导论7.2数据库系统概述•数据模型的三要素(1)数据结构数据结构是指所研究的数据库组成成分的类型的集合。用于描述系统的静态特征。(2)数据操作指对数据库中数据允许执行的操作的集合,用于描述系统的动态特征。数据模型中必须定义操作(如检索、更新)的确切含义、操作符号、操作规则以及实现操作的规则。(3)数据的约束条件是数据完整性规则的集合,指对给定的数据模型中数据及其联系所具有的制约和依存规则。15计算机科学导论7.2数据库系统概述•数据库的系统结构(1)模式模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是面向全体用户的基本数据视图。(2)外模式外模式也称子模式或用户模式,是数据库用户可见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图。(3)内模式内模式是数据物理结构和存储结构的描述,是数据在数据库内部的表示。16计算机科学导论7.2数据库系统概述•数据库的三级模式结构外模式2模式内模式数据库用户视图1用户视图n用户视图2外模式n外模式117计算机科学导论7.2数据库系统概述•数据独立性(1)外模式/模式映像当模式被改变时,可以由DBA改变各个外模式/模式映像,以保证外模式不发生变化,从而使根据外模式编写的应用程序也无需变化,这样就保证了数据与程序的逻辑独立性。(2)模式/内模式映像当数据的物理存储即内模式变化了,也可以由DBA来修改模式/内模式的映像,使得模式能够保持不变,外模式也不会变化,当然,应用程序也无需变动,从而保证了数据库中数据与程序的物理独立性。18计算机科学导论7.3关系数据库1.基本概念•关系:可以看作是一个行与列交叉的二维表,每一个交叉点都必须是单值的,每一列的所有数据都是同一类型的,每一列都有惟一的列名,行和列在表中的顺序都无关紧要;表中任意两行不能相同。•属性:关系中的每一列称为属性。•元组:关系中的行称为元组。•候选码:关系中能够惟一地标识一个元组的某个属性或属性组。•主码:一个关系中选定的一个候选码作为关系的主码。•主属性:主码的各个属性称为主属性。•外码:在关系数据库中,为了实现表与表之间的联系,将一个表的主码作为公共属性放到另一个关系中,在另一个关系中起连接作用的属性称为外码。19计算机科学导论7.3关系数据库2.关系模型与关系模式•关系模型(1)关系数据结构关系模型中,关系数据结构就是表。(2)关系操作选择、投影、连接、除、并、交、差、查询、插入、删除、修改等。(3)关系的数据约束三种完整性约束条件:实体完整性、参照完整性、用户自定义的完整性。20计算机科学导论7.3关系数据库•关系运算(1)传统的关系运算(a)关系R;(b)关系S;(c)关系的并运算;(d)关系的交运算;(e)关系的差运算21计算机科学导论7.3关系数据库(2)专门的关系运算①选择运算从给出的关系中选出满足给定条件的那些元组,是对关系的行进行的运算。②投影运算从给出的关系中选出关系的一个或多个属性列,是对关系的列进行的运算。③连接运算将两个关系模式通过共有的属性名拼接成一个更多属性列的关系。22计算机科学导论7.4数据库查询语言SQL1.SQL的特点•功能统一•非过程性语言•面向集合的操作方式•灵活的使用方式•SQL简单、易学2.SQL的功能•数据定义•数据操纵•数据查询•数据控制23计算机科学导论7.4数据库查询语言SQL3.SQL基本概念•基本表:独立存在的表,一个关系即对应一个基本表。•视图:视图是由一个或几个基本表导出的表。•存储过程:存储过程是用SQL语言编写成的SQL语句序列,它存储于SQL服务器上供用户调用执行。•触发器:触发器是一种特殊的存储过程,用来维护不同表中的相关数据的一致性。通过事件触发。24计算机科学导论7.5关系数据库设计1.关系数据库设计原则按照DBMS提供的功能和描述工具,设计出规模适当、能够正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。2.关系数据库设计步骤(1)需求分析(2)概念结构设计(3)逻辑结构设计(4)数据库物理设计(5)数据库实施(6)运行与维护25计算机科学导论7.6数据库管理1.DBA的职责与管理工具•职责:向终端用户提供数据和信息;制定数据库管理的政策、标准和规程;确保数据库的安全性;对数据库进行备份和恢复;培训终端用户。•管理工具:DBA进行数据库管理的重要工具是数据字典。数据字典通常是DBMS的一部分,它用来存储数据的特性和关系的定义。26计算机科学导论7.6数据库管理3.事务处理技术•事务的概念:事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全都不做,是一个不可分割的工作单位。•事务的特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持续性(Durability),或简称ACID特性。27计算机科学导论7.6数据库管理•数据库的恢复技术:数据库的恢复指使数据库从一种不一致的状态恢复到原来一致性的状态。数据库恢复的主要依据是备份的数据副本和日志文件。•数据库完整性控制:指保证数据库中数据的正确性、有效性、相容性,防止错误的数据进入数据库。28计算机科学导论7.7常用关系数据库管理系统1.ORACLE2.SYSBASE3.DB24.MSSQLSERVER5.MYSQL6.ACCESS29计算机科学导论7.8数据库新发展1.分布式数据库2.空间数据库3.多媒体数据库4.数据仓库5.信息存储与检索