数据库原理复习提纲

更新时间:2024-06-12 19:11:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数据库原理复习提纲

1.解释下列名词

数据(Data)指的是可记录的客观事实,并且有隐含的含义。

数据库(DataBase,简称DB)是存储在计算机系统内的有结构的数据集合,是相关数据的集合,数据由数据库管理系统统一管理和维护。DB是统一管理的相关数据的集合。DB能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。

数据库管理系统(DataBase Management System,简称DBMS)是在操作系统支持下工作的数据管理软件,是支持用户创建和维护数据库的一组程序包。DBMS是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。DBMS总是基于某种数据模型,可以分为层次型、网状型、关系型、面向对象型DBMS。

数据库系统(DataBase System,简称DBS)是指在计算机系统中引入数据库后的系统构成,由计算机硬件、操作系统、DBMS、DB、应用程序和用户以及数据库开发和管理人员等组成。DBS是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。

内模式: 内模式也称存储模式(Storage Schema)。它既定义了数据库中全部数据的物理结构,还定义了数据的存储方法、存取策略等。内模式与数据存储的软件和硬件环境有关。是数据库在物理存储方面的描述,定义所有的内部记录类型、索引和文件的组成方式,以及数据控制方面的细节。

模式; 模式也称逻辑模式(Logical Schema),是数据库中全体数据在逻辑上的视图。它通常以某种数据模型为基础,定义数据库中全部数据的逻辑结构,例如,数据记录的名称,数据项的名称、类型、域值等;还要定义数据项之间的联系,不同记录之间的联系;以及定义与数据有关的安全性、完整性等要求。安全性主要指保密性。

外模式也称子模式(Sub Schema)或用户模式,是个别用户组的数据库视图。每个外模式描述的是一个特定用户组所感兴趣的那部分数据库,而对该用户组隐藏了数据库的其他部分。外模式是模式的子集。不同用户的外模式是不同的(可相互覆盖)。是用户与数据库系统的接口,是用户用到的那部分数据的描述。 数据的逻辑独立性,是指当数据库的模式发生改变时,只需要改变存在于外模式和概念模式之间的映射转换,无需改变外模式或应用程序。

数据的物理独立性,是指当数据库的内模式发生改变时,系统只要改变概念模式和内模式之间的映射转换,而不必改变模式,从而更不需要改变内模式。

数据字典: 数据字典(Data Dictionary, 简称DD)是数据库系统中各种描述信息和控制信息的集合, 是数据库设计和管理的有力工具, 又称为“数据库的数据库”。数据库系统中存放三级结构定义的数据库称为数据字典。

主键 主码(Primary Key)。若一个关系中有多个候选码,则选取其中一个为主码。每个关系都有并且只有一个主码。用户选作元组标识的一个候选键为主键。

侯选键 候选码(Candidate Key):一个关系中的某个属性(或属性组)的值能唯一标识关系中的。不含有多余属性的超键称为候选键。 外键 外部码(Foreign Key)。若A是基本关系R1的属性(组),但不是R1的码,且A与基本关系R2的码K相对应,则称A是R1的外部码。 某个关系的主键相应的属性在另一关系中出现,此时该主键在就是另一关系的外键,如有两个关系S和SC,其中S#是关系S的主键,相应的属性S#在关系SC中也出现,此时S#就是关系SC的外键。 磁盘冗余阵列

并发控制: 该机制是用来控制多个事务的并发运行, 避免它们之间的相互干扰,保证每个事务都产生正确的结果。共享数据库允许多个用户和程序并发地访问数据库,这就可能引起冲突,引起数据的不一致。

两段锁协议:所谓两段封锁协议是指一个事务在读、写任何数据前必须首先申请并获得对该数据的封锁;一旦一个事务释放了一个封锁,则它就不得再申请任何封锁。在对任何数据进行读写操作之前,事务首先要获得对该数据的封锁;在释放一个封锁之后,事务不再获得任何其他封锁。

事务:事务是指一个操作序列,这些操作要么什么都做,要么都不做,是一个不可分割的工作单位,是数据库环境中的逻辑工作单位,相当于操作系统环境下的\进程\概念。

连接查询::查询时先对表进行笛卡尔积操作,然后再做等值联接、选择、投影等操作。联接查询的效率比嵌套查询低。 嵌套查询 嵌入式SQL:嵌入在高级语言的程序中使用的SQL语言称为嵌入式SQL。 触发器: 触发器的定义包括两个方面: (1) 指明触发器的触发事件; (2) 指明触发器执行的动作。

C/S结构:C/S结构模式由一个服务器(Server)与多个客户机(Client)组成。在客户/服务器系统中,数据库也是存放在服务器上的。但是,用户终端提出数据请求后,服务器不仅检索出文件,而且对文件进行操作,然后,只向用户发送查询的结果而不是整个文件,用户的机器(称为客户机)再根据用户对数据的要求,对数据作进一步的加工。

B/S结构:浏览器/服务器结构方式是基于互联网的一种分布式结构方式,一般由客户机、应用服务器及数据库服务器三部分组成,即在客户机和数据库服务器之间增加了一个应用服务器(也称为Web服务器的中间层)。

2. 数据库系统与文件系统的主要区别是什么?

数据库系统区别于传统文件处理系统的最重要特征就是引入了数据库这个概念,以及产生了专门用来实现和维护数据库而建立的通用软件——数据库管理系统。也就是说,数据库是存储在计算机系统内的有结构的数据的集合,数据是由数据库管理系统管理的。

文件系统管理数据具有如下特点:

(1) 数据可以长期保存在外存储器上, 并可以多次进行存取操作。

(2) 程序和数据有了一定的独立性, 并分开存放。 数据由专门的软件(即文件系统)进行数据管理, 程序和数据之间由软件提供的存取方法进行转换。

(3) 数据共享性差, 数据有较大的冗余。 文件是面向应用的, 当不同的应用程序中具有。 部分相同的数据时, 也必须建立各自的文件, 而不能共享相同的数据, 这样不仅带来数据的冗余度大, 存储空间浪费, 而且容易在数据进行修改时造成数据的不一致性。

数据库系统管理数据具有如下特点: (1) 采用特定的数据模型, 使数据结构化。

(2) 数据的独立性高。(3) 数据的共享性好, 数据冗余度低。 (4) 为用户提供了方便的用户接口 (5) 有统一的数据控制功能。

3. 试述数据库系统的特点和结构。

1.整体数据结构化

整体数据的结构化是数据库的主要特征之一。数据的逻辑结构存储在数据库(数据字典)中。数据项是数据库组织的基础。由于整体数据的结构化可减少乃至消除不必要的数据冗余,因此节约了整体数据的存储空间,避免了数据的不一致性和不相容性(数据不符合规定的约束条件)。

2.数据的共享度高

在DBMS的管理下,由于数据与数据的逻辑结构同时存储在数据库中;显示数据时,可同时显示数据的逻辑结构;整个组织的整体数据被综合考虑,整体数据结构化。因而,DBS的数据共享度较高。数据库中的数据可适应各种合法用户的合理要求以及各种应用的要求,可以方便地扩充新的应用,因而,数据共享度高。

3.数据的独立性高

数据的独立性是指数据与应用程序之间的关联性。数据和数据的结构是存储在数据库中的(在外存上),是由DBMS管理的。应用程序既不存储数据,也不存储数据的逻辑结构。当用户需要数据时,DBMS把数据库中的数据转换成用户需要的格式后,再提供给用户使用。用户程序要处理的只是所面对的数据。

用户所面对数据的结构并非数据库中数据的实际存储结构,也非数据库中数据的逻辑结构,仅仅是所面对数据的逻辑结构而已。因此,应用程序存取数据的子程序既可简化又可规范化。

4.高度的数据控制能力

(1) 较高的数据安全性(Security)。在DBMS管理下,只有合法用户才能访问数据库,才能访问他有权访问的数据,才能对数据进行他有权进行的操作,且操作必须合法。

(2) 较好的数据完整性(Integrity)。由DBMS而不是用户程序自动检查数据的一致性、相容性,保证数据符合完整性约束条件。

(3) 较强的并发控制能力。DBMS提供并发控制手段,使多个用户程序同时对数据库中的数据进行操作时,可以得到有效控制,即保证共享、并发操作,且不致破坏数据的完整性。

(4) 较强的数据恢复能力。计算机系统出现各种故障是很正常的,数据库中的数据遭到破坏、丢失也是可能的。DBMS必须具有某些数据库的恢复功能,即使数据库从错误状态恢复到正确状态的功能。

数据的三级模式结构 1.模式和实例 2.数据库系统中数据的三级模式结构 数据的三级模式结构包含有外模式、模式和内模式, 4. 试述数据库管理系统的主要功能和组成 1.数据定义(Data Definition)

DBMS提供了数据定义语言(Data Definition Language,简称DDL)。用户利用DDL可方便地定义数据库中数据的逻辑结构(其中最基本的是数据与数据的含义同时定义)。用户在分析、研究整个系统所有数据的基础上,全面安排和定义数据的结构,并将数据库存储在DBMS控制的存储介质上 2.数据操纵(Data Manipulation)

DBMS提供了数据操纵语言(Data Manipulation Language,简称DML)。用户利用DML可以实现对数据库中数据的各种操作:插入、查询、修改或删除等。例如,查询数据库以获取所需数据、更新数据库以反映客观世界的变化以及由数据生成报表等。 3.完整性约束检查(Integrity Constraint Check)

所谓完整性约束,是指数据必须符合的一些规定,如学生的学号必须唯一、所属部门必须存在、出生年份不能在1900年以前等。DBMS应能支持一些常用的完整性约束检查功能。 4.访问控制(Access Control)

数据库中的数据不属于任何程序,数据可以共享(Sharing),但只有合法用户才可以访问他可以访问的数据,才能进行他可以执行的数据操作,这就是访问控制。DBMS提供了数据控制语言(Data Control Language,简称DCL)来实现对不同级别用户的访问控制功能。 5.并发控制(Concurrency Control)

共享数据库允许多个用户和程序并发地访问数据库,这就可能引起冲突,引起数据的不一致。因此,DBMS应有并发控制的功能,确保试图更新同一数据的多个用户能够以一种受控的方式完成各自的工作,即避免并发操作时可能带来的数据不一致性。 6.数据库恢复(Database Recovery)

数据库是有可能遭到破坏的。因此,DBMS应具有恢复数据库的功能。 5.试述数据库系统的三级模式结构?并解释数据库为什么要采用这种结构? 数据的三级模式结构包含有外模式、模式和内模式

6.设计一个医院的E―R图。 医院有很多病人和医生, 同每个病人相关的是一系列检查和测试的记录,并将E—R图中的实体用关系表示的方式表示出来。 7试述视图和基本表的区别和联系, 试述视图的优点 8.设教学管理库中包括如下三个关系模式:

学生: S(SNO, SNAME, SEX, AGE, DEPT) 课程: C(CNO, CNAME, TNAME, CCREDIT)

选课: SC(SNO, CNO, GRADE

用SQL语句创建上述三张数据库表,并完成如下的操作: create table S (SNO char(9) NOT NULL unique PRIMARY KEY,

SNAME char(20) not null, SEX char(2) not null, AGE int(3) not null,

DEPT char(20) not null );

create table C (CNO char(9) NOT NULL unique PRIMARY KEY,

CNAME char(20) not null, TNAME char(20) not null, CCREDIT int(3) not null); CNO char(4) not null, GRADE char(20) not null,

create table SC (SNO char(9) NOT NULL,

PRIMARY KEY (`SNO`, `CNO`) ); (1) 检索计算机系女生的学号和姓名

select SNO SNAME from S where DEPT='计算机' and SEX='女' (2) 检索WANG老师所授课程号、 课程名 select CNO CNAME from C where TNAME='WANG'

(3) 检索至少选修了一门TIAN老师所授课程的学生姓名、 学号 select DISTINCT a.SNO ,a.SNAME from S a,C b,SC x where b.TNAME='TIAN' and b.CNO=x.CNO and a.SNO=x.SNO

(4) 将计算机系学生2号课成绩全部提高5%

update S a,SC x set x.GRADE=x.GRADE*1.05 where a.DEPT='计算机' and x.CNO='002' and a.SNO=x.SNO (5) 在学生表中插入一新生信息(′200213808′, ′HUJING′, ′女′, 22, ′计算机′) insert into S(SNO,SNAME,SEX,AGE,DEPT ) values ('200213808', 'HUJING', '女', 22, '计算机' ) (6) 将计算机系学生2号课成绩全部提高5%。 (同(4))

(7) 统计所有选修人数多于20的课程号和选课人数, 并按人数降序排列, 若人数相等, 则按课程

号升序排列

select CNO,count(CNO) from SC group by CNO HAVING count(CNO)>20 order by count(CNO) desc, CNO asc

(8) 检索OS课成绩高于该课平均成绩的同学学号

select SNO from SC where GRADE>( select AVG(GRADE) from SC where CNO in (select CNO from C where CNAME='OS' )) and CNO in (select CNO from C where CNAME='OS' ) (9) 将查询SC表和修改GRADE属性的权限授予用户ZHAO GRANT UPDATE (GRADE),SELECT on SC to ZHAO;

(10) 将对表S的插入权限授予用户LIPING, 并允许他将此权限授予其他用户 GRANT insert ON S TO LIPING WITH GRANT OPTION;

9.什么是数据库的安全性? 什么是数据库的完整性? 数据库的安全性和完整性的区别和联系是什么? 数据的安全性和完整性是两个不同的概念。数据的安全性是防止数据库被恶意破坏和非法存取;而数据的完整性是为了防止错误信息的输入,保证数据库中的数据符合应用环境的语义要求。安全性措施的防范对象是非法用户和非法操作,而完整性措施的防范对象是不合语义的数据。

10.为了保证烟台大学局域网内学生选课数据库系统能够安全稳定的运行,根据你学过的知识,给出一个解决方案(包括硬件、软件、网络、管理等)

11.试述数据库设计系统分析和概念设计两个阶段的主要任务。

需求分析这一阶段的主要任务有: (1) 确认系统的设计范围; (2) 调查信息需求、收集数据; (3) 分析、综合系统调查得到的资料;

(4) 建立需求说明文档、数据字典、数据流程图。

与本阶段同步,对数据处理的同步分析应产生:数据流程图、判定树(判定表)以及数据字典中对处理过程的描述。

概念结构设计阶段利用需求分析得到的数据流程图等进行工作,主要输出文档包括: (1) 系统各子部门的局部概念结构描述; (2) 系统全局概念结构描述; (3) 修改后的数据字典; (4) 概念模型应具有的业务规则。

与本阶段同步,对数据处理的同步分析应产生系统说明书,包括:新系统的要求、方案、概图和反映新系统信息流的数据流程图。

12.数据库系统项目完成验收需要准备哪几个报告?

本文来源:https://www.bwwdw.com/article/u7g6.html

Top