第二章_基础知识

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第二章数据库基础知识边学边用Access2003数据管理技术的发展概况人工管理阶段(20世纪50年代)数据与处理数据的程序密切相关,互相不独立,数据不做长期保存,而且依赖于计算机的程序或软件。文件系统阶段(20世纪60年代)程序与数据有一定的独立性,程序和数据分开存储,程序文件和数据文件具有各自的属性。数据文件长期保存,但冗余度大,缺乏数据独立性,做不到集中管理。数据库系统阶段(20世纪60年代后期)数据共享,减少数据冗余,数据库采用特定的数据模型,较高的数据独立性,数据库系统有统一的数据控制和数据管理。边学边用Access2003数据库系统的组成数据库就是与某个特定主题或目的有关的数据的集合,换言之,数据库就是用来存储一定条件的数据的“器具”。终端用户终端用户终端用户数据库应用系统应用开发工具数据库管理系统数据库应用程序员数据库管理员边学边用Access2003数据库应用系统数据库应用系统是指系统开发人员利用数据库系统资源开发出来的,面向某一类实际应用的应用软件系统。例如:财务管理系统,人事管理系统等等。数据库管理系统(DBMS)数据库管理系统通常指Access、SQLServer、Oracle等软件。数据库应用系统是在这些软件中开发的系统,如财务电算化软件、学校信息管理系统等。数据库管理系统是位于用户与操作系统之间的一个数据管理软件,它的基本功能包括以下几个方面:数据定义功能用户通过数据定义语言对数据库中的数据对象进行定义。数据操纵功能用户可以使用数据操纵语言操纵数据,如查询、插入、删除和修改。数据库的运行管理功能数据库在建立、运行和维护时由数据库管理系统统一管理和控制。数据库的建立和维护功能它包括数据库初始数据的输入、转换功能,数据库的转储、恢复功能等。边学边用Access2003第一代数据库系统:网状、层次数据库系统第二代数据库系统:关系型数据库系统第三代数据库系统:面向对象关系型数据库系统边学边用Access2003数据库管理的实现现实世界数据库管理的对象存在于现实世界中,现实世界中的事物存在着各种各样的联系。这种联系是客观存在的,是由事物本身的性质决定的。例如,学校考务管理系统中有老师、学生、课程、教室等构成元素。概念世界概念世界也叫做信息世界,是现实世界在人们头脑中的反映,是对客观事物及其联系的一种抽象描述。从现实世界到概念世界是通过概念模型来表达的。如对学生的描述可分为:学号、姓名、班级、籍贯、性别等概念。数据世界存入计算机系统的数据是将概念世界中的事物数据化的结果。为准确地反映事物本身及事物之间的各种联系,数据库中的数据一定存在一个结构,数据模型可用来准确描述这种结构。在实现数据库管理,也就是三个世界的转化过程中,概念模型和数据模型是实现现实世界数据化的桥梁,是对现实世界中的事物进行抽象的工具。边学边用Access2003三个世界的转化过程示意图边学边用Access2003概念模型和数据模型概念模型—用户和数据库设计人员之间进行交流的工具,主要用于数据库设计。实体:客观存在并相互区别的事物。如学生,学生选课实体的属性:学号、年龄等实体集和实体型:属性值的集合表示一个实体,属性的集合表示一种实体类型即实体型。同类型的实体的集合为实体集。如学生(学号,姓名,性别…,照片)是实体型,全体学生是一个实体集。数据模型—客观事物及其联系的数据描述,具有描述数据和数据联系两方面的功能。由数据结构、数据操作和数据的约束组成。是数据库系统的核心和基础。边学边用Access2003常见的数据模型l层次模型l网状模型l关系模型l面向对象模型边学边用Access2003层次模型示意图学校艺术学院行政部门美术系工作人员音乐系教师教师EBACGFD边学边用Access2003网状模型示意图ACBD学生学生课程课程边学边用Access2003关系模型示意图编号姓名性别生日婚否工资121张三男09/01/76已婚1234.50123顾小四男12/23/83未婚908.00122李大成男11/09/64已婚1706.00211王河东男03/23/78已婚1200.12212王丹丹女09/12/81未婚700.00213赵文革男10/30/75已婚1600.00字段(属性)主键记录(元组)教师基本情况表关系名称边学边用Access2003层次模型、网状模型及关系模型的优缺点数据模型占用内存空间处理效率设计弹性数据设计复杂度界面亲和力层次模型高高低高低网状模型中中—高低—中高低—适度关系模型低低高低高边学边用Access2003关系模型中的相关术语以二维表的形式表示实体和实体之间联系的数据模型称为关系数据模型。从模型的三要素角度看,关系模型的内容为:数据结构:一张二维表格。数据操作:数据表的定义,检索、维护、计算等。数据约束条件:表中列的取值范围即域值的限制条件。边学边用Access2003关系模型中的相关术语关系—表关系名(属性名1,属性2,…n)表名(字段名1,字段名2,…n)eg.教师(教师id,姓名,性别…,简历)元组水平方向每一行是一个元组,对应表中的一个具体记录eg.“教师”表和“课程”表两个关系各包括多条记录或多个元组属性垂直方向的每一列有一个属性名,即字段名。域属性的取值范围主键外键表之间的关系通过外键来建立,如果两个表之间呈现“一对多”关系,则“一”表中的主键字段必然出现在“多”表中,成为联系两个表的纽带,“多”表中出现的这个字段就是外键。边学边用Access2003边学边用Access2003关系模型的完整性关系模型对数据一般都具有一定的限制,这种限制称为完整性或完整性约束。关系模型的完整性是保证关系数据表正确的关键。关系模型支持实体完整性约束、参照完整性约束和域约束3种完整性约束。(1)实体完整性约束假设A是一个表R的主键,则A不能接收空值,即单列主键的值不能为空,复合主键的任何列也不能接收空值。例如,在学生信息表中,“学号”为该表的主键,那么在数据库的任何记录中,“学号”列的值都不能为空。这样的约束称为实体完整性约束。(2)参照完整性约束参照完整性约束关心的是逻辑相关的表中值与值之间的关系。假设X是一个表A的主键,在表B中是外键,那么若K是表B中一个外部键值,则表A中必然存在在X上的值为K的记录。例如,“系编码”是院系信息表的主键,而在学生信息表中是相对于院系信息表的外键(学生信息表中的主关键字是由“学号”和“系编码”组合而成),对于学生信息表的任何记录,其所包含的“系编码”的值,在院系信息表的“系编码”列中必然存在一个相同的值。这样的约束称为参照完整性约束。边学边用Access2003(3)域约束(取值范围)域是逻辑相关的值的集合,从域中可以得出特定列的值。例如,在学生信息表中:●“出生日期”域的值必须按照特定的统一格式存放,而不能有时用:1986.12.23格式,有时用:12/23/1986格式,造成数据混乱;●“学生名字”、“院系名称”等域的值必须属于字符集合;●对于“性别”,该域中的值必须局限于男、女等。边学边用Access2003关系运算关系的基本运算有两类:传统的集合运算和专门的关系运算。传统的集合运算(1)并(Union):设有两个关系R和S,它们具有相同的结构。R和S的并是由属于R或属于S的元组组成的集合,运算符为∪。例如:设每个班有一个学生关系R1,R2,R3,…则全校学生关系T是:T=R1∪R2∪R3∪…(2)差(Difference):设有两个关系R和S,它们具有相同的结构。R和S的差是由属于R但不属于S的元组组成的集合。运算符为-。例如:设有参加计算机小组的学生关系R,参加桥牌小组的学生关系S。求参加了计算机小组但没有参加桥牌小组的学生。结果放在关系T1中,则T1=R-S。(3)交(Intersection):设有两个关系R和S,它们具有相同的结构。R和S的交是由既属于R又属于S的元组组成的集合,运算符为∩。交运算的结果是R和S的共同元组。例如:设有参加计算机小组的学生关系R,参加桥牌小组的学生关系S。求既参加了计算机小组又参加桥牌小组的学生。结果放在关系T2中,则T2=R∩S。关系的交可以用关系的差来表示。即R∩S=R-(R–S),所以,上式也可以写成:T2=R-(R–S)。边学边用Access2003专门的关系运算(1)选择(Selection):按照给定条件从指定的关系中挑选出满足条件的元组构成新的关系,其关系模式不变,但其中元组的数目小于等于原来的关系中元组的个数,它是原关系的一个子集。这是从行的角度进行的运算,即水平方向抽取元组。(2)投影(projection):从指定的关系中挑选出某些属性构成新的关系,其关系模式所包含的属性个数往往比原关系少,或者属性的排列顺序不同。投影的结果将取消由于取消了某些列而产生的重复元组。例如:设有读者关系,读者(借书证号,姓名,性别,单位,职称,地址)。按照单位在前,姓名在后的次序列出读者名单。此运算结果包括元组数目不变,但减少了列的数目,同时改变了列的显示顺序(3)联接(join):联接是将两个和多个关系模式通过公共的属性名拼接成一个更宽的关系模式,生成的新关系包含满足联接条件的元组。例如:设有三个关系:学生(学号,姓名,所在系,性别,现住址);课程(课程号,课程名,学分);选修(学号,课程号,成绩)。若想查询成绩90分以上的学生姓名。联接结果包括学生、课程、选修三个关系中属性的并集。自然联接:是去掉重复属性的等值连接。它属于联接运算的一个特例。边学边用Access2003关系的种类(1)一对一联系(1:1)如果对于实体集A中的每一个实体,实体集B中至少有一个(也可以没有)实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1。例如,一个学生只能有一个学号,而一个学号只能指向一个学生,则学生与学号之间具有一对一联系。(2)一对多联系(1:n)如果对于实体集A中的每一个实体,实体集B中有个n实体(n≥0)之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n。例如,一个班级中有若干名学生,而每个学生只在一个班级中学习,则班级与学生之间具有一对多联系。(3)多对多联系(m:n)如果对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m≥0)与之联系,则称实体集A与实体集B具有多对多联系,记为m:n。例如,一门课程同时有若干个学生选修,而一个学生可以同时选修多门课程,则课程与学生之间具有多对多联系。注意:实际上,一对一联系是一对多联系的特例,而一对多联系又是多对多联系的特例。边学边用Access2003关系的特点关系必须规范化在同一个关系中不能出现相同的属性名关系中不允许有完全相同的元组,即冗余边学边用Access2003数据库的设计数据库的设计原则1.字段的唯一性2.记录的唯一性3.功能相关性4.字段无关性边学边用Access2003数据库的设计数据库的设计步骤1.确定数据库的创建目标2.确定数据库的结构3.确定数据库包含的表4.确定表中需要包含的字段5.确定主键及表之间的关系6.完善数据库:编程、测试数据库

1 / 24
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功