《数据库计算机考试(绝密版)教师ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据库计算机考试(绝密版)教师ppt课件.ppt(37页珍藏版)》请在三一办公上搜索。
1、第二章 数据库基础知识,2.1 数据库基本概念2.2 关系数据库使用的语言2.3 数据库设计概念,2.1 数据库基本概念,2.1.1 数据库技术的发展 在应用计算机进行数据处理的技术发展过程中,历经了程序数据处理技术、文件数据处理技术和数据库数据处理技术三个阶段。发展至今,绝大多数的数据处理应用系统都是采用数据库数据处理技术实现的。采用数据库数据处理技术实现的数据处理应用系统,我们称其为数据库应用系统,而相关的应用技术,我们称其为数据库技术。采用数据库技术开发数据处理应用系统,应该充分应用数据库技术特点,合理地规划数据库,有效地组织数据,编写功能完备、结构清晰、方便应用的数据处理程序。,1、第
2、一代数据库:层次模型、网状模型2、第二代数据库:关系模型3、第三代数据库:面向对象数据模型4、数据库技术的新发展,2.1.2 数据库的基本概念,数据:是数据库系统研究和处理的对象,本质上讲是描述事物的符号记录。数据库:是数据的集合,具有一定的组织形式并被储存于计算机存储器上,具有多种表现形式并可被各种用户所共享。数据库管理系统:是位于用户与操作系统之间的一层数据管理软件,属于系统软件。具有数据定义、数据库的建立与维护、数据操纵及查询优化、数据库的运行管理功能 数据库系统:通常是指带有数据库的计算机应用系统。一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户组成。,2.1
3、.3 数据模型,数据(data)是描述事物的符号记录。模型(Model)是现实世界的抽象。数据模型(Data Model)是数据特征的抽象,是数据库管理的教学形式框架。数据库系统中用以提供信息表示和操作手段的形式构架。数据模型所描述的内容包括三个部分:数据结构、数据操作、数据约束。,1)数据结构:数据模型中的数据结构主要描述数据的类型、内容、性质以及数据间的联系等。数据结构是数据模型的基础,数据操作和约束都建立在数据结构上。不同的数据结构具有不同的操作和约束。2)数据操作:数据模型中数据操作主要描述在相应的数据结构上的操作类型和操作方式。3)数据约束:数据模型中的数据约束主要描述数据结构内数据
4、间的语法、词义联系、他们之间的制约和依存关系,以及数据动态变化的规则,以保证数据的正确、有效和相容。,数据模型按不同的应用层次分成三种类型:分别是概念数据模型、逻辑数据模型、物理数据模型。1、概念数据模型(Conceptual Data Model):简称概念模型,是面向数据库用户的实现世界的模型,主要用来描述世界的概念化结构,它使数据库的设计人员在设计的初始阶段,摆脱计算机系统及DBMS的具体技术问题,集中精力分析数据以及数据之间的联系等,与具体的数据管理系统(Database Management System,简称DBMS)无关。概念数据模型必须换成逻辑数据模型,才能在DBMS中实现。,
5、2、逻辑数据模型(Logical Data Model):简称数据模型,这是用户从数据库所看到的模型,是具体的DBMS所支持的数据模型,如网状数据模型(Network Data Model)、层次数据模型(Hierarchical Data Model)等等。此模型既要面向用户,又要面向系统,主要用于数据库管理系统(DBMS)的实现。3、物理数据模型(Physical Data Model):简称物理模型,是面向计算机物理表示的模型,描述了数据在储存介质上的组织结构,它不但与具体的DBMS有关,而且还与操作系统和硬件有关。每一种逻辑数据模型在实现时都有起对应的物理数据模型。DBMS为了保证其独
6、立性与可移植性,大部分物理数据模型的实现工作又系统自动完成,而设计者只设计索引、聚集等特殊结构。,数据库领域采用的数据模型有层次模型、网状模型、关系模型和面向对象模型。1、层次模型:是用树形结构来表示数据间的从属关系结构。树的结点表示实体集(记录的型),结点之间的连线表示相连两实体集之间的关系,这种关系只能是“1一M”的。通常把表示1的实体集放在上方,称为父结点,表示M的实体集放在下方,称为子结点。层次模型的结构特点是:(1)有且仅有一个根结点。(2)根结点以外的其它结点有且仅有一个父结点。因而层次模型只能表示“1一M”关系,而不能直接表示“MM”关系。,2、网状模型用网络结构表示实体类型及其
7、实体之间联系的模型。顾名思义,一个事物和另外的几个都有联系这样构成一张网状图。网状模型的数据结构主要有以下两个特征:(1)允许一个以上的节点无双亲。(2)一个节点可以有多于一个的双亲。,3、关系模型关系模型就是用二维表格结构来表示实体及实体之间联系的模型。关系模型是各个关系的框架的集合,即关系模型是一些表格的格式,其中包括关系名、属性名、关键字等。例如,教学数据库中教师与课程的关系模型如图所示。,教师课程数据库的关系模型,教师关系,课程关系C,授课关系SC,关系模型的基本术语关系:二维表结构属性:二维表中的列称为属性,Access中被称为字段(Field)。域:属性的取值范围称为域。元组:二维
8、表中的行(记录的值)称为元组,Access中被称为记录(Record)。主码:表中的某个属性或属性组,能够唯一确定一个元组。Access中主码被称为主键。关系模式:是对关系的描述。一般表示为:关系名(属性1,属性2,属性n),4、面向对象数据模型所谓面向对象(Object-Oriented),可以这样定义:面向对象=对象+类+属性的继承+对象之间的通信。如果一个数据库应用系统是使用这样的概念设计和实现的,则称这个应用系统是面向对象的。一个面向对象的应用系统中的每一个组成部分都是对象,所需实现的操作则通过建立对象与对象之间的通信来完成的。,对象的定义客观世界中的任何一个事物都可以看成是一个对象,
9、或者说,客观世界是由很多对象组成的。正是所有这些对象及其相互之间联系的存在,才构成了一个五彩缤纷的世界。因此,可以这样定义对象,一个对象就是它本身的一组属性和它可执行的一组操作。数据库应用系统的对象一般可以分为两类:实体对象和过程对象。(1)实体对象在数据库应用系统中,实体对象的主要形式为数据库中的数据表对象。数据表对象记录的是数据库中的数据实体,它们是一些客观存在。,(2)过程对象在Access数据库应用系统中,过程对象的主要形式为数据库中的窗体对象、查询对象和报表对象。Access数据库中的过程对象用于实施针对数据库中实体对象的操作,并通过这些操作来改变某些实体对象的属性值,或驱动其他的过
10、程对象。,2、类的概念类是一组具有相同数据结构和相同类型操作的对象的集合。类是对象的抽象,而对象是类的具体实例。,3、事件与方法的概念 为了完成一个数据库应用系统的开发工作,在根据需要创建了应用对象并设定了所有对象的各个属性之后,还必须为相关对象设计其响应某些事件的方法。一个方法也就是一个操作序列,即程序。而这样一种程序设计的过程,就被称之为面向对象的程序设计。既然客观世界是由对象组成的,那么客观世界中的所有行动都是由对象发出,且能够为某些对象感受到。我们把这样的行动称为事件。在关系数据库应用系统中,事件分为内部事件和外部事件。系统中对象的数据操作和功能调用命令等等都是内部事件,而鼠标的移动、
11、单击和键盘的敲击等等都是外部事件。并非所有的事件都能被每一个对象感受到。当某一个对象感受到一个特定事件发生时,这个对象应该可以做出某种响应。,2.1.4 关系数据库,1、关系模型的组成关系数据结构:关系模型中数据的逻辑结构是一张二维表。关系操作:关系操作采用集合操作方式,即操作的对象和结果都是集合。关系模型中常用的关系操作包括两类。查询操作:选择、投影、连接、除、并、交、差增加、删除、修改关系完整性约束:关系模型中的完整性是指数据库中数据的正确性和一致性,包括实体完整性、参照完整性和用户定义的完整性。,关系的特点:(1)关系必须规范化。所谓规范化就是关系模型中的关系要满足一定要求。最基本的要求
12、是每个属性必须是不可分割的数据单元,即表中不能再包含表。(2)在同一个关系中不能出现相同的属性名。(3)关系中不允许有完全相同的元组,即冗余。(4)在一个关系中元组的次序无关紧要。(5)在一个关系中列的次序无关紧要。,2、关系运算关系的基本运算有两类,一类是传统的集合运算:并、差、交等,另一类是专门的关系运算:选择、投影、连接等。设有两个关系R和S,它们具有相同的结构。(1)并(Union)关系R和关系S的并由属于R或属于S的元组组成,即R和S的所有元组合并,删去重复元组,组成一个新关系,其结果仍为n目关系。对于关系数据库,记录的插入和添加可通过并运算实现。,2.差(Difference)关系
13、R与关系S的差由属于R而不属于S的所有元组组成,即R中删去与S中相同的元组,组成一个新关系,其结果仍为n目关系。记作:R-S通过差运算,可实现关系数据库记录的删除。3.交(Intersection)关系R与关系S的交由既属于R又属于S的元组组成,即R与S中相同的元组,组成一个新关系,其结果仍为n目关系。记作:RS如果两个关系没有相同的元组,那么它们的交为空。两个关系的并和差运算为基本运算(即不能用其他运算表达的运算),而交运算为非基本运算,交运算可以用差运算来表示:RS,(4)选择运算:选择运算是在关系中选择符合某些条件的元组。其中的条件是以逻辑表达式给出的,值为真的元组将被选取。,查询计算机
14、系的全体学生,(5)投影运算:投影运算是在关系中选择某些属性列组成新的关系。,查询教师的姓名及其职称。,(6)连接运算:选择和投影运算的操作对象只是一个关系,连接运算需要两个关系作为操作对象,是从两个关系的笛卡儿积中选取属性间满足一定条件的元组。最常用的连接运算有两种:等值连接(Equi Join)和自然连接(Natural Join)。等值连接与自然连接的区别:等值连接中不要求相等属性值的属性名相同,而自然连接要求相等属性值的属性名必须相同,即两关系只有在同名属性才能进行自然连接。等值连接不将重复属性去掉,而自然连接去掉重复属性,也可以说,自然连接是去掉重复列的等值连接。,3、关系数据库系统
15、的功能数据定义数据处理数据控制数据维护,数据定义:包括定义构成数据库结构的外模式、模式和内模式,定义各个外模式与模式之间的映射,定义模式与内模式之间的映射,定义有关的约束条件(如完整性规则的定义,用户口令和存取权限等)数据操纵 包括数据库数据的检索、插入、修改和删除等基本操作,数据控制 可以管理工作组中使用、编辑数据的权限,完成数据安全性、完整性及一致性的定义与检查,还可以保证数据库在多个用户之间正常使用数据维护 数据库中初始数据的装载,数据库的转储、重组、性能监控、系统恢复等功能,2.2 关系数据库使用的语言,2.2.1 关于VBAVBA是一种面向对象的语言,VBA是Microsoft Ac
16、cess中的内置编程语言,VBA的语法与独立运行的Visual Basic编程语言相互兼容 VBA是一套完整的应用程序开发环境,用户可用Visual Basic语言来编写程序,完成对数据库的设计。,VBA由模块组成,有2个基本类型:类模块和标准模块类模块:窗体模块、报表模块标准模块:通用工程和常用过程过程:子过程、标准过程在Access中提供的VBA开发界面称为VBE(Visual Basic Editor)。在VBE中可编写VBA函数和过程。,2.2.2 关于SQL,1、SQL的特点(1)SQL是一种功能齐全的数据库语言 数据定义、数据操纵、数据查询、数据控制(2)SQL是高度非过程化的语言
17、(3)SQL语言简洁,易学易用(4)语言共享2、SQL的数据查询和数据操纵功能,2.3 数据库设计概念,2.3.1 数据库关系完整性设计1、实体完整性规则 实体完整性是指基本关系的主属性,即主码的值都不能取空值。例如在教师关系中:教师档案(教师编号,教师姓名,院系代码,专业名称)“教师编号”属性为主码,则“教师编号”不能取空值。,2、参照完整性规则 参照完整性规则定义:设F是基本关系R的一个或一组属性,但不是关系R的主码,如果F与基本关系S的主码 Ks 相对应,则称F是基本关系R的外码。对于R中每个元组在F上的值必须为:或者取空值(F 的每个属性值均为空值);或者等于S中某个元组的主码值。,3
18、、用户定义的完整性 用户定义的完整性是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。例如:在学生成绩表中规定成绩不能超过100,2.3.2 数据库规范化设计关系数据库中的关系是要满足一定要求的,满足不同程度要求的为不同范式。目前遵循的主要范式包括第一范式(1 NF)、第二范式(2 NF)、第三范式(3 NF)、第四范式(4NF)等。规范化设计的过程就是按不同的范式,将一个二维表不断地分解成多个二维表并建立表之间的关联,最终达到一个表只描述一个实体或者实体间的一种联系的目标,1、第一范式关系中每一个数据项必须是不可再分的,满足这个条件的关系模式就属于第一范式
19、。关系数据库中的所有数据表都必然满足第一范式。2、第二范式 在一个满足第一范式的关系中,如果所有非主属性都完全依赖于主码,则称这个关系满足第二范式。3、第三范式 对于满足第二范式的关系,如果每一个非主属性都不传递依赖于主码,则称这个关系满足第三范式。,2.3.3 数据库应用系统设计方法1、需求分析 首先要详细调查要处理的对象,明确用户的各种要求,在此基础上确定数据库中需要存储哪些数据及系统需要具备哪些功能等。对学生成绩管理系统进行需求分析得到以下结果:用户需要完成数据的录入 完成数据的修改 实现信息查询,2、应用系统的数据库设计 确定需要几个数据表,每一个表中包括几个字段等,然后在Access中建立数据表。3、应用系统的功能设计4、系统的性能分析软件初步形成后,需要对它进行性能分析,如果有不完善的地方,要根据分析结果对数据库进行优化,直到应用软件的设计满足用户的需要为止。5、系统的发布与维护,