首页 第1章_数据库基础知识

第1章_数据库基础知识

举报
开通vip

第1章_数据库基础知识第1章 数据库基础知识 随着信息技术的迅速发展,大部分企事业单位的经营、管理模式发生了变化。整个单位的经营、管理工作都要以“网络环境下运行的管理信息系统”为核心。因此社会大量需要掌握“管理信息系统”使用的人才。数据库作为信息管理的核心技术,是大学生应该掌握的知识。本章系统地介绍数据库的基本概念、理论、方法。 1.1 数据与信息 1.1.1 数据 数据是数据库这门课程的研究对象。那么,什么是数据呢?我们把能输入计算机并能被计算机处理的数字、文字、符号、声音、图形、图像统称为数据。 我们要想用计算机来管理现实世界中的各...

第1章_数据库基础知识
第1章 数据库基础知识 随着信息技术的迅速发展,大部分企事业单位的经营、管理模式发生了变化。整个单位的经营、管理工作都要以“网络环境下运行的管理信息系统”为核心。因此社会大量需要掌握“管理信息系统”使用的人才。数据库作为信息管理的核心技术,是大学生应该掌握的知识。本章系统地介绍数据库的基本概念、理论、方法。 1.1 数据与信息 1.1.1 数据 数据是数据库这门课程的研究对象。那么,什么是数据呢?我们把能输入计算机并能被计算机处理的数字、文字、符号、声音、图形、图像统称为数据。 我们要想用计算机来管理现实世界中的各种事物,就必须把这些事物数据化,也就是说要用数据来表示各种事物。 1.1.2 信息 我们管理数据的目的是为了从中获取信息,进而用信息指导决策。那么,什么是信息呢?      信息化的创始人香农和韦弗1948年在《通信的数学理论》中指出:“凡是在一种情况下能减少不确定性的任何事物都叫做信息(Information)。”      控制论的创始人维纳对信息的定义是:“信息就是我们在适应外部世界,并且使这种适应所作用于外部世界的过程中,同外部世界进行交换的内容的名称。”      我国国家 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 GB489885《情报与文献工作词汇基本术语》中,关于信息的解释是:“信息是物质存在的一种方式、形态或运动状态,也是事物的一种普遍属性,一般指数据、消息中所包含的意义,可以使消息中所描述事件的不定性减少。” 笔者认为可以给信息下一个这样的定义:“信息是能被人感知,并且能对接收者的行为产生影响的消息、数据的内涵,它能减少人们对事物进行判断的不确定性”。 1.1.3 数据与信息 数据是信息的载体,信息是数据的本质。信息通常隐藏在数据中,因此我们要从数据中获取信息,就要对数据进行科学、有效的管理。 1.2 数据管理 1.2.1 数据管理概念 我们把对数据的收集、整理、组织、存储、检索、传输、维护这一系列过程称为数据管理。 1.2.2 数据管理技术的发展 自从1946年现代电子计算机诞生后,人们便开始利用计算机来管理数据。利用计算机管理数据大致经过了三个发展阶段,具体如下: 1.人工管理阶段 这一阶段所处时间是20世纪50年代中期以前。这期间,计算机的软件还没有操作系统、高级语言,只有汇编语言;硬件还没有磁盘这样的直接存储设备,只有磁带、卡片这样的顺序存储设备。因此,计算机管理数据的能力很低。这个时期的数据管理特点是: ​ 数据不保存。 ​ 没有专用的软件对数据进行管理。 ​ 只有程序的概念,没有文件的概念。 ​ 数据面向应用。即一组数据对应一个程序。 2.文件管理阶段 这一阶段所处时间是20世纪50年代后期~60年代中期。这期间,计算机的软件已经有了高级语言、操作系统;硬件已有了磁盘这样的直接存储设备。因此,计算机管理数据的能力有了很大提高,这时开始了利用计算机文件进行数据管理。这个时期的数据管理特点是: ​ 数据可以长期保存在外部存储器磁盘上。 ​ 数据的逻辑结构与物理结构有了区别。 ​ 文件组织已多样化。 ​ 数据不再属于某个特定的程序,可以重复使用。 随着数据管理规模的扩大,文件系统显露出了缺陷,具体如下: ​ 数据冗余。 ​ 数据不一致性 ​ 数据联系弱 3.数据库管理阶段 这一阶段所处时间是20世纪60年代末至今。这期间,计算机的软、硬件技术发展迅速,这为专门进行数据管理的软件的开发奠定了基础。用数据库管理数据的思想是:“用一个统一的模型来表示数据,依据此模型建立一个专门管理数据的软件(称它为:数据库管理系统,英文简称是DBMS)来对数据进行管理,用户通过DBMS对数据库中的数据进行操作。 这个时期的数据管理特点是: ​ 采用数据模型表示复杂的数据结构。 ​ 有较高的数据独立性。 ​ 数据冗余度低。 ​ 数据由一个软件(DBMS)统一管理。 1.2.3 数据库 数据库(英文简称:DB)是长期存储在计算机磁盘内、有组织、统一管理的相关数据集合。 1.3 数据模型 我们在现实生活中常见到“模型”这个名词,例如:建筑模型、汽车模型等等。那么到底什么是模型,它有什么作用呢?我们说模型是对现实世界事物的抽象表示,它把一类事物的本质特征、组成结构抽取出来,用统一的形式表示出来。数据模型是对现实世界要管理的事物及其联系的抽象表示。 事实上,要把现实世界中各种各样要管理的事物转换成计算机中的数据,不是一步完成的,要经过三个步骤:第一步,把现实世界中的事物转换成我们能用语言、文字表示的概念数据;第二步,把概念数据转换成适合计算机程序实现的逻辑数据;第三步,把逻辑数据转换成适合计算机存储设备存储的物理数据。在转换过程中,每一步都需要相应的模型来描述数据及数据之间的联系。 1.3.1 数据模型的三个要素 数据模型的作用是把现实世界要管理的事物及其联系抽象表示出来,既数据化,以便实现计算机管理。数据模型必须具备以下三个要素: 1.数据结构 数据结构用来表示现实世界中的各种事物及事物之间的联系。 2.数据操作 数据操作主要是能对该数据结构中的数据进行查询和更新(插入、删除、修改) 。 3.完整性约束 它给出数据及其联系所具有的制约和依赖规则。它是保证数据库中数据正确、有效、安全的基础。 1.3.2 概念模型 第一步转换使用的模型被称为“实体联系模型”,简称为ER模型,其主要内容如下: 1.实体 我们把现实世界中每个要管理的事物称为一个实体。实体可以是看得见、摸得着的具体事物,例如:学生、顾客、员工、部门、图书、订单等;也可以是抽象的事物,例如:图书分类、专业、学生类别等。 2.实体集 实体集是同类实体的集合。例如:学生实体集是所有学生实体的集合。在ER模型中用矩形框来表示实体集,将实体的名称写在矩形内,如图1-1所示。 图1-1 ER模型中实体的表示 3.属性 事物都有自己的特征,例如:学生有学号、姓名、性别、民族、生日等特征,我们把事物的特征称为属性。实体的每个属性都有:属性名、取值类型、取值范围三个因素。 在ER模型中用椭圆框来表示实体的属性,将属性名写在椭圆内,如图1-2所示。 图1-2 ER模型中属性的表示 4.联系 在现实世界中事物之间是相互联系的,例如:“学生”要选修“课程”、“顾客”要订购“图书”等等。事物之间的这些联系也要在模型中体现出来。 在ER模型中用菱形框来表示两个实体之间的联系,将联系的名称写在菱形内。例如,学生要选某个教学班的课;一个学生属于某个学生类别。如图1-3所示。 图1-3 ER模型中联系的表示 实体之间联系的名称一般用动名词命名,如果找不到合适的名称,也可以用两个实体名称之间加一个下划线来作为“联系”的名称。有时联系也有属性,例如:“选课”联系有“成绩”属性。 5.两个实体集之间联系的数量关系 在ER模型中两个实体集之间的联系存在着数量关系,具体有: ⑴ 一对一(1:1) 如果实体集E1中每个实体至多和实体集E2中的一个实体有联系,反之亦然,那么称实体集E1和E2的联系为“一对一联系”,记为1:1。例如,“班长”实体集与“班级”实体集之间的联系为一对一联系,如图1-4所示。 图1-4一对一联系 ⑵ 一对多(1 : n) 如果实体集E1中每个实体可以与实体集E2中任意多个(零个或多个)实体有联系,而E2中每个实体至多和E1中一个实体有联系,那么称实体集E1和E2的联系为“一对多联系”,记为1 : n。例如,“学生类别”实体集与“学生”实体集之间的联系为一对多联系,如图1-5所示。 图1-5一对多联系 ⑶ 多对多(m : n) 如果实体集E1中每个实体可以与实体集E2中任意多个(零个或多个)实体有联系,反之亦然,那么称实体集E1和E2的联系为“多对多联系”,记为m:n。例如,“学生”实体集与“教学班”实体集之间的联系为多对多联系,如图1-6所示。 图1-6 多对多联系 1.3.3 逻辑模型 第二步转换使用的模型被称为逻辑数据模型,通常称其为 “数据模型”。到目前为止,计算机科学工作者共给出了四种逻辑数据模型(数据模型),具体如下: 1.网状模型 网状模型用“图”结构来表示数据及数据之间的联系。1969年数据库系统语言研究会(CODASYL)下属的数据库任务组(DBTG)在它的 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 中提出了网状模型。基于网状模型开发的DBMS产品有:Honeywell公司的IDS/Ⅱ、HP公司的IMAGE/3000等。网状模型由于其数据结构复杂且编程复杂,因此没有被广泛使用,很快被其它模型取代。 2. 层次模型 层次模型用“树”结构来表示数据及数据之间的联系。基于层次模型开发的DBMS的典型代表是IBM公司的IMS。同样由于数据结构和编程复杂,因此层次模型也没有被广泛使用,很快被关系模型所取代。 3.关系模型 1970年IBM公司的研究员E.F.Codd发表了题为“大型共享系统的关系数据库的关系模型”的文章,文中首次提出了关系模型这一概念。关系模型用“关系(二维表)”结构来表示数据及数据之间的联系。由于关系模型有众多优点,所以它一推出便受到极大关注,各厂家纷纷推出基于该模型的DBMS产品。目前市场上绝大部分数据库系统都是关系数据库系统,典型的有:IBM公司的DB2,Microsoft公司的SQL Server,Oracle公司的Oracle等等。特别值得一提的是,1999年中国人民大学向市场上推出了基于关系模型的“金仓”数据库系统,从而结束了我国没有自己的数据库系统的历史。 4.对象模型 对象模型用“对象”结构来表示数据及数据之间的联系。由于面向对象的程序 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 技术成为软件开发的主流技术,因此这种模型必将成为今后的发展方向。 1.4 数据库系统结构 数据库系统结构主要研究内容是:“一个复杂的数据库系统,按什么样的结构来构建”。目前在计算机领域,构建一个系统一般遵循以下三个原则: ​ 分层构建原则。 ​ 让不同层次用户看到不同的内容。 ​ 各层之间具有一定的相对独立性。 数据库系统的系统结构也遵循以上原则,采用三级模式结构来构建。 1.4.1 数据库三级体系结构 1.模式 模式是数据库中全体数据的逻辑结构和特征的描述,它仅仅涉及模型的描述,不涉及到具体的值,它是所有用户的公共数据视图。 2.外模式 外模式就是模式的一部分(子集)。它是一般用户看到的“数据视图”。由于很多一般用户只使用数据库的部分数据,因此他们没有必要了解整个模式,故DBMS 从整个模式中抽取一部分(外模式)给用户。 3.内模式 内模式是数据在计算机的外存储器(如:磁盘)上的存储结构及特征的描述,它是DBMS 和数据库的开发及管理者要使用的数据视图。它是数据库中全体数据的物理(存储)结构和特征的描述。 4.外模式 / 模式映象 外模式 / 模式映象存在于外模式和模式之间,用于建立外模式与模式之间的对应关系。 5.模式 / 内模式映象 模式 / 内模式映象存在于模式和内模式之间,用于定义模式与内模式之间的对应关系。 三级模式结构如图1-7所示。 图1-7数据库的体系结构 1.4.2 三级模式结构的优点 1.数据独立性高 采用三级模式结构的数据库系统具有两级数据独立性: ⑴ 物理独立性 如果数据库的内模式作了修改,那么只要对模式/内模式映象作相应的修改,就可使模式尽可能地保持不变。 ⑵ 逻辑独立性 如果数据库的模式作了修改,那么只要对模式/外模式映象作相应的修改,就可使外模式和应用程序尽可能地保持不变。 2.数据库安全性高 由于不同层次的用户所看到的内容不同,因此提高了整个系统的安全性。 1.5 数据库管理系统 数据库管理系统(英文简称:DBMS)是一个基于某种数据模型开发的、对数据库进行统一管理的软件。所有的数据库用户都要通过DBMS 来使用数据库,如图1-8所示。 图1-8 DBMS的作用 1.5.1 数据库管理系统的功能 1.数据库的定义功能 DBMS提供数据定义语言(DDL)来定义数据库的三级模式结构及三级模式之间的映象,定义数据的完整性约束,定义数据库的保密限制等。 2.数据库的操纵功能 DBMS提供数据操纵语言(DML)来实现用户对数据库的操作。基本的数据操作有四种:检索(查询)、插入、删除、修改,后三种又称为更新操作。 3.数据库的保护功能 DBMS对数据库的保护功能是保护数据库不受破坏,具体如下: ⑴ 并发性保护 在同一时刻,可能有多个用户要对数据库中的同一个数据进行操作,这可能带来许多问题,例如:丢失修改、读脏数据、不可重复读。并发性保护的主要任务是解决多个用户对数据库同时进行操作时可能发生的各种问题。 ⑵ 数据库的恢复保护 数据库在运行过程中,磁盘可能发生故障(介质故障)致使数据被破坏。恢复保护主要任务是解决当数据被破坏或系统出现故障时,把数据库恢复到某个正确的状态,尽量减少损失。 ⑶ 数据库的完整性保护 数据完整性保护主要任务是保证数据库中的数据始终保持正确的、一致的状态,防止不符合语法的数据进入数据库。 ⑷ 数据库的安全保护 数据库安全性保护主要任务是防止未经授权的用户使用数据库中的数据。 4.数据库的维护功能 DBMS的这一部分功能包括数据库的初始数据的载入、转换、转儲、数据库的改组以及性能监视等功能。 5.数据字典(DD) 数据字典用于存放关于数据库定义方面的数据(我们把这种数据称为:元数据)。 1.5.2 数据库管理系统的组成 从程序模块结构来看,DBMS由两大部分组成:查询处理器和存储管理器。 1.查询处理器 查询处理器模块主要负责解释、执行用户发出的对数据库进行操作的命令。 2.存储管理器 存储管理器模块主要负责数据库数据在磁盘的存储管理。 1.6 数据库系统 一个完整的数据库系统由以下部分构成: 1.计算机硬件 计算机、网络等设备。 2.计算机软件 操作系统(OS)、数据库管理系统(DBMS)及其它支持软件工具。 3.数据库 存储在计算机磁盘中,与一个单位具体相关的数据集合。 4.各类人员 数据库设计人员、数据库管理维护人员(DBA)、业务用户等。 1.7 关系模型 到目前为止,计算机科学工作者共给出了四种逻辑数据模型:网状模型、层次模型、关系模型、对象模型。目前使用的主要是关系模型,下面介绍关系模型的相关知识。 1.7.1 关系模型的基本概念 1.关系 所谓关系就是一种 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 化的二维表,如表1-1到表1-4 所示。关系模型的数据结构就是这种被称为“关系”的二维表,也就是说关系模型用二维表结构来表示数据及数据之间的联系。从数学角度上看“关系”就是“集合”。 表1-1 学生 学号 姓名 性别 民族 生日 20071213158 图门毕力格 男 蒙古族 1987-3-6 20071213210 努恩吉雅 女 蒙族 1988-10-2 20071116180 李强 男 汉族 1986-4-5 20071118002 王蕾 女 回族 1986-5-5 20071118031 石艳 女 汉族 1989-12-10 20081121066 李强 男 汉族 1990-2-1 表1-2 课程 课号 课名 课程类型 先导课号 180001 计算机导轮 专业 180002 C语言程序设计 专业 180001 180003 C++ 专业 180002 180004 数据结构 专业 180002 180005 数据库原理 专业 180004 189001 VB程序设计 公共 表1-3 教学班 课号 班级号 容纳人数 180001 01 70 180001 02 70 180002 01 80 180002 02 80 190021 01 85 190021 02 85 表1-4 选课 学号 课号 班级号 成绩 20071213158 180001 01 68 20071213158 180002 01 74 20071118031 180001 01 58 20071118031 180002 02 83 20081121066 180002 01 86 2.属性 我们把表的列称为属性(又称字段或数据项)。每个属性都有“属性名、属性的取值类型、属性的范围”三个方面。例如,学生表的第一个属性的名称是“学号”,其取值类型是字符串,取值范围是11位数字字符。 3.关系模式 我们把 “关系名称(属性名称1,属性名称2,…,属性名称n)”称为一个关系的模式。例如,学生(学号,姓名,性别,民族,生日,电话,身份证号)就是“学生”关系的模式。 4.元组 我们把表的行称为元组(又称记录)。 5.候选键 如果关系中的某个属性集取一个确定值,就能唯一地标识一个元组,且又不含有多余的属性,那么我们称这个属性集为关系的候选键。例如:“学号”属性是“学生”关系的候选键,“学号,课号,班号”属性集是“选课”关系的候选键。 6.主键 用户可以从候选键中选出一个作为主键。例如:我们可以选“学号”属性作为学生关系的主键。 7.外键 如果关系模式R中的某属性集A是另一个关系模式的主键,那么我们称A是关系模式R的外键。例如:“选课”关系中的“学号”属性就是“学生”关系的主键,因此,我们称“学号”属性是“选课”关系的外键。 8.元数 关系的元数就是关系所具有的属性个数。 9.基数 关系的基数就是关系中元组的个数。 1.7.2 关系的性质 关系具有以下性质: ⑴ 关系中每一个属性都是不可分解的。 ⑵ 关系中不允许出现重复元组。 ⑶ 由于关系是一个集合,因此不考虑元组之间的顺序。 ⑷ 关系的属性也是无序的。 1.7.3 关系模型的三类完整性规则 1.实体完整性规则 实体完整性规则要求:关系中的元组在主键的属性上既不能有重复值,也不能有空值。例如:往“学生”关系插入一个元组时,“学号”属性不能是空值(NULL);“学生”表中不能有两条记录的“学号”属性值相同。 2.参照完整性规则 参照完整性规则要求:不能引用不存在的元组。例如:“选课”关系中不能出现“学生”关系中没有的“学号”。 3.用户定义的完整性规则 用户定义的完整性规则是指用户根据实际需要对关系中的属性设置的约束条件。例如:用户根据学校的实际规定,可以对“选课”关系的“成绩”属性作“0≤成绩≤100”的约束。 1.7.4 将ER模型转换为关系模型 1.实体的转换规则 将每个实体类型转换成一个关系模式。实体的属性即为关系模式的属性。 2.联系的转换规则 ⑴ 1:1的联系 可以在由两个实体转换所得的关系模式中的任何一个关系模式的属性中加入另一个关系模式的主键以及联系类型的属性。 例如: 图1-9 一对一联系 实体“班级”的属性为:班级编号,班级人数,班级简介。 实体“班长”的属性为:学号,姓名,性别,民族。 将此ER模型转换为关系模式如下: ① 将“班级”实体集转换为关系模式“班级”,具体如下: 班级(班级编号,班级人数,班级简介) ② 将“班长”实体集转换为关系模式“班长”,具体如下: 班长(学号,姓名,性别,民族) ③ 联系“聘用”的转换 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 一:班级(班级编号,班级人数,班级简介,班长学号,聘期,任职时间) 方案二:班长(学号,姓名,性别,民族,班级编号,聘期,任职时间) ⑵ 1:n的联系 在由n端实体类型转换成的关系模式中加入1端的主键和联系类型的属性。 例如: 图1-10 一对多联系 实体“学生类别”的属性为:类别号,类别名称。 实体“学生”的属性为:学号,姓名,性别,民族,生日。 将此ER模型转换为关系模式如下: ① 将“学生类别”实体集转换为关系模式“学生类别”,具体如下: 学生类别(类别号,类别名称) ② 将“学生”实体集转换为关系模式“学生”,具体如下: 学生(学号,姓名,性别,民族,生日) ③ 联系“属于”的转换 学生(学号,姓名,性别,民族,生日,类别号) ⑶ m:n的联系 将联系类型也转换成一个关系模式,其属性为两端实体的主键和联系类型的属性。 例如: 图1-11 多对多联系 实体“教学班”的属性为:课号,班级号,容纳人数,已选课人数。 实体“学生”的属性为:学号,姓名,性别,民族,生日。 将此ER模型转换为关系模式如下: ① 将“学生”实体集转换为关系模式“学生”,具体如下: 学生(学号,姓名,性别,民族,生日) ② 将“教学班”实体集转换为关系模式“教学班”,具体如下: 教学班(课号,班级号,容纳人数,已选课人数) ③ 将联系“选课”转换为 选课(学号,课号,班级号,成绩) 1.7.5 关系代数运算 关系代数是以关系为运算对象的一组高级运算的集合。由于关系是属性个数相同的元组的集合,因此集合的代数操作就可以引入到关系代数中。 1.并(Union) 设关系R和关系S具有相同的模式,我们把R和S的并记为:R∪S 。R和S的并是一个新关系,新关系的模式与R、S相同;新关系的元组由R中的元组和S中的元组合并且去掉重复元组构成。 例如: R S R∪S A B a1 b1 a2 b2 a3 b3 A B a1 b1 a2 b3 a3 b3 A B a1 b1 a2 b2 a2 b3 a3 b3 图1-12 并操作 2.差(Difference) 设关系R和关系S具有相同的模式,我们把R和S的差记为:R-S 。R和S的差是一个新关系,新关系的模式与R、S相同;新关系的元组由属于R但不属于S的元组构成。 例如: R S R-S A B a1 b1 a2 b2 a3 b3 A B a1 b1 a4 b4 a3 b5 A B a2 b2 a3 b3 图1-13 差操作 3.笛卡儿积(Cartesian Product) 设关系R和关系S的元数分别为r和s ,关系R和关系S的基数分别为m和n,我们把R和S的笛卡尔积记为:R×S 。R和S的笛卡尔积是一个新关系,新关系的模式由R的属性和S的属性合并而成,既新关系的元数为:r+s;新关系的元组构成规则为:R中每个元组都与S中的每个元组进行联接,从而构成新关系的元组,新关系的元组个数为:m×n 。 例如: 关系R 关系 S A B a1 b1 a2 b2 A D E a1 d1 e1 a2 d2 e2 A B S.A D E a1 b1 a1 d1 e1 a1 b1 a2 d2 e2 a2 b2 a1 d1 e1 a2 b2 a2 d2 e2 R×S 图1-14 笛卡尔积操作 4.投影(Projection) 对关系R作投影运算就是从R的属性中选出一些属性,用选出的这些属性构成新关系的模式;新关系的元组就是把R的元组去掉那些未保留列,再去掉重复元组。用“Π”作为投影运算符,在Π的右下角写出关系R的要保留的属性。例如:关系R的模式为:R(A , B , C , D , E),那么,ΠA , B(R)表示对关系R作投影运算,新关系保留R的“A,B”属性,去掉“C,D,E”属性。 例如: R A B C D E a1 b1 c1 d1 e1 a1 b1 c1 d2 e1 a2 b2 c1 d1 e1 a2 b2 c1 d2 e1 ΠA , C , D(R) A C D a1 c1 d1 a1 c1 d2 a2 c1 d2 图1-15 投影操作 5.选择(Selection) 选择运算是根据某些条件对关系的元组进行筛选,用“σ”作为选择运算符。例如:σ(F)(R)表示对关系R作选择运算,F是一个逻辑表达式,运算结果是一个新关系,新关系的模式与R相同;新关系的元组是由R中使表达式F为“真”的那些元组构成。 例如: R 职工号 性别 民族 200701 女 汉族 200702 男 蒙族 200801 男 汉族 200802 女 回族 200803 女 藏族 σ(性别=“女”)(R) 职工号 性别 民族 200701 女 汉族 200802 女 回族 200803 女 藏族 σ(性别=“女”∧民族=“汉族”)(R) 职工号 性别 民族 200701 女 汉族 σ(性别=“女”∨民族=“汉族”)(R) 职工号 性别 民族 200701 女 汉族 200801 男 汉族 200802 女 回族 200803 女 藏族 图1-16 选择操作 说明:运算符“∧”的含义是“并且”,运算符“∨”的含义是“或”。 以上五个运算构成了关系代数的完备运算集合。完备的含义是指:其他任何运算都能用这五个运算推导出来;这五个运算不能缺少任何一个,否则就不完备了。 6.自然联接(Natural Join) 两个关系R和S的自然联接用 表示,两个关系作自然联接的前提条件是两个关系必须有相同的属性。如果两个属性取值类型、范围相同,我们就称这两个属性是相同属性。 的模式是由R的属性和S的属性合并后,相同属性只保留一个,把另一个去掉而构成; 的元组是由R的每个元组与S的每个元组按相同属性都相等为条件,进行联接而构成。例如: R S R S A B C a1 b1 c1 a2 b2 c2 a3 b3 c3 a4 b4 c3 B C D b1 c1 d1 b2 c2 d2 b3 c2 d3 A B C D a1 b1 c1 d1 a2 b2 c2 d2 图1-17 自然连接操作 1.8 数据库应用设计 1.8.1 数据库设计步骤 1. 规划阶段 在数据库的规划阶段,首先要对单位组织作全面的调查,画出组织结构图,以及各部门的主要职责等,然后从经济、技术、效益、法律的方面对数据库系统进行可行性分析,写出可行性报告并组织专家讨论。最后根据分析结果确定系统的总目标和制订项目开发计划,写出项目开发说明书。 2. 需求分析阶段 在需求分析阶段,首先分析用户活动,产生业务流程图。其次要确定系统范围,产生系统范围图。继而分析用户活动涉及的数据,产生数据流图。最终分析系统数据,产生数据字典。 3. 概念设计阶段 在概念设计阶段进行数据抽象,设计出局部概念模式,再由所有的局部模式综合出概念模式,对得到的全局概念模式组织专家对其进行评审,这一阶段的设计结果是得出一个全局的ER模型。 4. 逻辑设计阶段 逻辑设计的主要任务是把概念模型转化成与选定的具体DBMS所支持的数据模型(一般来说是“关系模型”)相符合的逻辑结构。在这阶段要确定每个表中每个属性的取值类型、长度、约束等以及模式之间的外键约束。 5. 物理设计阶段 物理设计需要确定每个基本表的存放位置(既把一个基本表存放到哪个文件中)及每个基本表应建立哪些索引等。在同等平台环境下,如果物理设计不同,可能会使查询速度有很大的差异。 6. 数据库实现阶段 在这一阶段使用选定的数据定义语言定义数据库结构,在数据库中装载数据,进行应用程序的编制与调试,对建立的数据库进行试运行。 7. 数据库的运行维护阶段 数据库的开发任务完成之后就进入运行和维护阶段。在这个阶段要进行的是数据库的转储和恢复、数据库的安全性与完整性控制、数据库性能的监控、分析和改进以及数据的重组和重构。 1.8.2教务管理系统数据库 1. 需求概述 2. ER模型 图1-18 教务管理系统ER模型 实体的属性 ⑴ 实体“学院”的属性为:学院代码,学院名称,学院简介。 ⑵ 实体“专业”的属性为:专业代码,专业名称,专业简介。 ⑶ 实体“学生类别”的属性为:类别号,类别名称,学制,授课语言 ⑷ 实体“教师”的属性为:教师号,姓名,性别,民族,生日,职称。 ⑸ 实体“学生”的属性为:学号,姓名,性别,民族,生日,手机,身份证,简历,相片 ⑹ 实体“课程”的属性为:课号,课名,课程类型,课程简介。 ⑺ 实体“教室”的属性为:校区,楼名,房间号,教室类型,容纳人数。 ⑻ 实体“教学班”的属性为:课号,班号,容纳人数。 联系的属性 ⑴ “选课”联系的属性为:成绩。 ⑵ “排课1” 联系的属性为:开始周,结束周,周学时,评估成绩。 ⑶ “排课2” 联系的属性为:星期,节。 其它联系没有属性。 3. 关系模型 学院(学院代码,学院名称,学院简介) 专业(专业代码,专业名称,专业简介,所属学院) 学生类别(类别号,类别名称,学制,授课语言) 教师(教师号,姓名,性别,民族,生日,职称,所属学院) 学生(学号,姓名,性别,民族,生日,手机,身份证,简历,相片,类别号,专业代码) 课程(课号,课名,课程类型,课程简介,先导课号,开设学院) 教室(校区,楼名,房间号,教室类型,容纳人数) 教学班(课号,班号,容纳人数,已选课人数) 排课1(课号,班号,教师号,开始周,结束周,周学时,评估成绩) 排课2(课号,班号,校区,楼名,房间号,星期,节) 选课(学号,课号 ,班号,成绩) 成绩单(学年,学期,学号,课号,成绩)
本文档为【第1章_数据库基础知识】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_926325
暂无简介~
格式:doc
大小:226KB
软件:Word
页数:0
分类:工学
上传时间:2013-12-18
浏览量:31