数据库应用技术课程答疑,复习(文本)

更新时间:2024-02-29 15:33:01 阅读量: 综合文库 文档下载

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

(2014.12.25)数据库应用技术课程答疑,复习(文本)

史红星:大家好,下午的教学活动开始了。欢迎大家就课程内容进行提问。

本学期,我们开始使用新的教材,这是首次考试,请大家关注提供的考核说明、模拟试题!

提供课程的考核说明供大家复习参考。

数据库应用技术考核说明

审定稿

第一部分 考核说明

课程的性质和任务

《数据库应用技术》课程是国家开放大学计算机科学与技术本科(专科起点)专业的统设必修课,4学分,72学时,其中实验32学时,开设一学期。

《数据库应用技术》是计算机科学与技术专业中一门重要的基础课。主要学习数据库系统的基本概念、原理及应用。本课程以SQL Server数据库为操作环境。课程内容主要包括数据库系统的组成、关系数据库、数据库设计以及数据管理与维护等内容,同时讲解基于SQL Server的数据库应用系统的开发方法和实例。

要求学生通过本课程的学习,理解有关数据库系统的基本概念、基本理论,掌握相关的知识,初步掌握数据库设计方法,能在SQL Server环境中熟练完成建立数据库、关系表,对关系表中的数据进行增、删、改、查等操作,了解开发数据库应用程序的基本方法。

考核对象

开放大学系统计算机科学与技术本科专业学生。 命题依据

本考核说明严格按照国家开放大学“开放教育试点”计算机科学与技术专业《数据库应用技术》课程教学大纲编写。本考核说明是考试命题的依据,考核内容以所用教材《数据库系统及应用》为基础。

考核要求

考核学生掌握和运用数据库基本知识进行数据库管理和初步设计的能力。教学内容分为了解、理解和掌握三个层次。考核的重点是检查对基础知识的掌握与应用情况。具体考核要求分为以下3个层次:

掌握:能运用有关知识熟练解决最基本的问题或者能综合运用相关知识解决有一定难度的问题(考试中有一定难度的试题主要涉及要求掌握的知识点)。

理解:能运用有关知识解决一般的问题。 了解:能运用有关知识解决比较简单的问题。 命题原则

1.严格按照该课程教学大纲和考核说明的要求命题。 2.试题的覆盖面较广,并适当突出重点。 3.试题的难易程度和题量适当。 考核形式

采用形成性考核与终结性考试相结合的方式。形成性考核占总成绩的30%,终结性考试

占总成绩的70%。

(一)形成性考核 1. 考核手段与形式

形成性考核包括学生完成形考作业和做实验两个部分。形考作业一共4次,要求学生认真完成作业册上的内容。本课程共5次实验,要求学生在真实的SQL Server 2008环境下完成实验内容。

2. 形考各形式所占比重及计分方法

形成性考核中,平时作业共4次,占形考总成绩的40%,每次作业成绩的权重占形考总成绩的10%。

实验共5次,占形考总成绩的60%;每次实验成绩的权重占形考总成绩的12%。 (二)终结性考试 1.考试手段及方式

本课程的终结性考试为纸质考试。试题由国家开放大学统一命题。 2.命题类型

考核题型包括选择题、判断题、简述题、综合应用题等。 3. 考试时限

考试时间限制为90分钟。

第二部分 考核内容和要求

第一章 数据库系统概述

【考核目的】

考核考生对数据库产生的背景、使用数据库技术管理数据带来的好处、数据模型、数据库管理系统的功能、数据库系统的组成等基本概念的理解。 【考核的知识点】

1.数据库技术的发展 2.概念数据模型 3.关系数据模型

4.数据库系统的三级模式 5.数据库系统组成

6. 数据库管理系统的功能 【考核要求】

了解:数据库技术的发展过程,层次模型和网状模型 理解:数据模型的概念,概念模型与组织模型,关系模型

理解:数据库三级模式结构,数据库系统结构,数据库管理系统的功能

第二章 关系数据库理论

【考核目的】

考核考生对关系数据模型的基本概念和术语、关系的完整性约束、关系操作以及关系规范化理论等基本概念的理解,要求考生能够进行三个范式的判断及转换。 【考核的知识点】

1. 关系模型三要素 2. 关系完整性约束

3. 关系代数 4. 函数依赖 5. 关系规范化 【考核要求】

理解:关系的基本概念,函数依赖的概念

掌握:关系代数的运算,三个范式的定义、判断及规范化方法

第三章 创建数据库

【考核目的】

考核考生对SQL Server 2008的安装和配置的掌握情况;SQL Server 2008提供的常用工具的功能和使用方法;要求考生掌握在SQL Server 2008环境中创建数据库和维护数据库空间的方法。

【考核的知识点】

1.SQL Server的安装和常用工具 2.创建数据库 3.数据库空间管理 【考核要求】

了解:SQL Server数据库管理系统的安装环境要求及安装过程 掌握:SQL Server数据库的构成及创建方法,数据库空间管理方法

第四章T-SQL语言基础与关系表

【考核目的】

考核考生对SQL语言支持的数据类型、SQL Server 2008支持的SQL语言的一些基础知识以及支持的流程控制语句等基本概念的理解,要求考生掌握创建和修改关系表的方法。 【考核的知识点】

1.SQL语言特点与功能 2.T-SQL数据类型

3.T-SQL语言的基础知识 3.关系表的创建与维护 【考核要求】

了解:SQL语言的特点 理解:SQL语言的功能

掌握:T-SQL的常用数据类型,T-SQL语言的基础知识 掌握:关系表的创建和修改方法

第五章 数据操作语言

【考核目的】

考核考生对实现数据查询、插入、删除以及更改操作语句的理解情况,要求考生能够熟练的掌握简单查询、多表查询、数据更改语句。 【考核的知识点】

1.数据查询语句 1)简单查询语句

2)查询语句的统计功能 3)多表连接查询

4)CASE函数 5)子查询

2.数据更改语句 1)插入语句 2)删除语句 3)更新语句 【考核要求】

理解:子查询的作用和执行机制

掌握:在SQL Server环境中执行数据操作语句的方法

掌握:简单查询、多表连接查询、分组统计查询、CASE函数的使用 掌握:数据插入、删除和更改语句的使用

第六章 数据库其他对象管理

【考核目的】

考核考生对数据库中视图、索引、存储过程和触发器的基本概念的理解情况,要求考生能够定义这几个数据库中的常用对象。 【考核的知识点】

1.视图 2.索引 3.存储过程 4.触发器 【考核要求】

理解:视图、索引、存储过程和触发器的作用 掌握:掌握视图的定义方法 掌握:存储过程的定义方法 掌握:触发器的定义方法

第七章 数据库管理与维护

【考核目的】

考核考生对事务、安全管理、数据库备份与恢复以及数据的导入和导出基本概念的理解。

【考核的知识点】

1.事务的概念与作用 2.数据库安全性 3.数据库备份与恢复 4.数据导入与导出 【考核要求】

理解:事务的概念和性质

掌握:在SQL Server环境中实现数据库安全管理的方法 掌握:在SQL Server环境中实现数据库备份与恢复的方法 掌握:在SQL Server环境中数据导入与导出的方法

第八章 数据库设计

【考核目的】

考核考生对数据库设计全过程的理解,要求考生理解需求分析、结构设计、数据库的实施和维护的基本理论和基本方法。 【考核的知识点】

1.需求分析

2.概念结构设计 3.逻辑结构设计 4.物理结构设计 5.数据库实施

6.数据库运行和维护 【考核要求】

了解:数据库需求分析、实施、运行和维护的基本工作内容 理解:数据库结构设计每一步骤的工作内容 掌握:概念结构设计、逻辑结构设计方法

第九章 数据库应用系统开发

【考核目的】

考核考生利用VB语言进行数据库应用系统开发基本方法的理解。要求考生能够通过VB实现对数据库中具体表的相关操作。 【考核的知识点】

1.嵌入式SQL

2.C/S和B/S体系结构 3.C/S应用系统开发方法 【考核要求】

了解:嵌入式SQL编程模式 理解:C/S和B/S体系结构

掌握:开发数据库应用系统的基本方法

第三部分 模拟考核试题、解答及评分标准

一、单项选择题(每个题只有一个答案是正确的。每小题2分,共15题,30分)

1.数据库系统三级模式中,下列关于外模式到模式的映像的说法,正确的是( A )。 A、外模式到模式的映像定义通常包含在外模式描述中 B、外模式到模式的映像提供了数据的物理独立性

C、外模式到模式的映像使得当模式发生变化时可以保证外模式不变 D、外模式到模式的映像是由用户来维护的

2.下列关于概念层数据模型的说法,错误的是( C )。 A、概念层数据模型是面向用户设计的 B、E-R模型是一种表达概念层设计的模型

C、在进行概念层数据模型设计时要考虑使用的具体数据库管理系统 D、概念层数据模型反映的是现实系统中有应用价值的信息结构

3.下列不属于数据库管理系统功能的是( D )。 A、数据定义功能

B、数据查询功能

C、数据库运行管理和控制功能

D、用概念层数据模型表达现实世界业务

4.下列不属于数据模型三要素的是( C )。 A、数据结构 B、数据操作

C、数据库管理系统 D、数据完整性约束

5.数据完整性是指数据库中存储的数据是有意义的或正确的。下列不属于数据数据完整性约束的是( D )。 A、实体完整性约束 B、参照完整性约束 C、域完整性约束

D、用户操作完整性约束

6.设有学生关系模式:学生(学号,姓名,所在系,性别,身份证号,所在班)。下列关于能够作为该关系模式主键的属性的说法,最正确的是( D )。 A、仅学号 B、仅姓名

C、仅身份证号

D、学号或者身份证号

7. 下列关于集合交运算的说法,正确的是( C )。 A、进行交运算的两个关系必须具有相同数目的行个数

B、进行交运算的两个关系必须具有相同数目的行个数和列个数 C、进行交运算的两个关系的列个数必须相同,对应列的语义相同

D、交运算的结果是包含两个关系的全部数据行,并去掉了内容相同的数据行

8. 下列关于范式和函数依赖的说法,错误的是( B )。 A、第二范式的关系模式一定是第一范式的

B、第二范式的关系模式一定不包含传递函数依赖 C、第三范式的关系模式一定不包含部分函数依赖

D、包含部分函数依赖的关系模式的主键一定由多个属性组成

9. 设有销售表(商品号,销售时间,销售数量),现要统计P01号商品的销售总数量,下列语句正确的是( D )。

A、SELECT COUNT(*) FROM 销售表 WHERE 商品号 = 'P01'

B、SELECT COUNT(销售数量) FROM 销售表 WHERE 商品号 = 'P01' C、SELECT SUM(*) FROM 销售表 WHERE 商品号 = 'P01'

D、SELECT SUM(销售数量) FROM 销售表 WHERE 商品号 = 'P01'

10. 下列关于SQL Server 2008数据库的说法,错误的是( C )。

A、每个数据库至少包含两个文件

B、每个数据库都必须包含主要数据文件,且只能有一个主要数据文件 C、每个数据库所包含的文件必须存放在不同的物理位置

D、维护数据库运行的系统信息必须存储在用户数据库的主要数据文件中

11. 若某关系模式中有用于存储职工工资的列,假设职工工资要求能到万位,且小数点后需保留2位。则下列类型中最合适该列的是( B )。 A、numeric(5,2) B、numeric(7,2) C、float D、real

12. 设有学生表(学号,姓名,所在系),现要为该表添加新列:性别,字符类型。则下列语句中正确的是( B )。

A、ALTER TABLE 学生表 ADD COLUMN 性别 NCHAR(1) B、ALTER TABLE 学生表 ADD 性别 NCHAR(1)

C、CREATE TABLE 学生表 ADD COLUMN 性别 NCHAR(1) D、CREATE TABLE 学生表 ADD 性别 NCHAR(1)

13. 如果希望从学生表中查询所有姓“张”且名字是2个汉字的学生,下列条件语句中正确的是( B )。

A、WHERE 姓名 LIKE '张%' B、WHERE 姓名 LIKE '张_' C、WHERE 姓名 = '张%' D、WHERE 姓名 = '张_'

14. 设有职工表(职工号,姓名,基本工资),现要查询基本工资最高的前3名职工的姓名和基本工资,包括并列的情况。下列语句中正确的是( D )。 A、SELECT TOP 3 WITH TIES 姓名, 基本工资 FROM 职工表

B、SELECT TOP 3 WITH TIES 姓名, 基本工资 FROM 职工表 ORDER BY 基本工资

C、SELECT TOP 3 WITH TIES 姓名, 基本工资 FROM 职工表 ORDER BY基本工资 ASC

D、SELECT TOP 3 WITH TIES 姓名, 基本工资 FROM 职工表 ORDER BY基本工资 DESC

15.下列关于索引的说明,错误的是( A )。

A、必须先建立聚集索引然后才能建立非聚集索引 B、每个表最多只能建立1个聚集索引

C、当建立了聚集索引后,系统会自动将数据按聚集索引关键字值进行物理排序 D、索引会在一定程度上影响数据增、删、改操作效率

二、判断题(正确的在括号内打上“√”,错误的打上“╳”。每小题2分,共10题,共20分)

1.关系数据库的组织层数据模型是二维表。(√)

2.在关系数据库中主键用于表达数据之间的关联关系。(╳) 3.数据库三级模式中,内模式是面向用户设计的。(╳) 4.专门的关系运算包括:投影、选择、连接、除等操作。(√) 5.关系规范化理论主要是为解决表中的数据冗余问题。(√) 6. 在创建好数据库后,不能收缩日志文件的空间。(╳)

7. 在定义视图的语句中,可以包含对数据的增、删、改语句。(╳) 8. 触发器的主要作用是实现复杂的完整性约束。(√) 9. 事务是数据库管理系统定义的数据操作系列,这些操作必须作为一个完整的工作单元执行。(╳)

10. 用户要访问SQL Server数据库中的数据,必须经过两个认证过程,一个是具有连接到数据库服务器的权限,一个是具有访问数据库的权限。(╳)

三、简述题(每小题5分,共2题,共10分) 1.请简要说明存储过程的概念和优点

参考答案及评分要点:

存储过程概念:存储过程是存储在数据库服务器端供客户端调用执行的有若干SQL语句构成的代码段。(2分)

存储过程优点:能够进行模块化程序设计;改善数据操作性能;减少客户端和服务器之间的网络流量;可作为一种安全机制使用。(每答对1点得1分)

2.什么是函数依赖,请举例说明传递函数依赖和部分函数依赖。 参考答案及评分要点:

设一个关系为R,X和Y是它的两个属性集。若对于X上的每个值都有Y上的一个惟一值与之对应,则称X和Y具有函数依赖关系,并称X函数决定Y(1分)。

部分函数依赖示例。设有关系模式销售(商品号,商品名,销售时间,销售数量),该模式的主键是(商品号,销售时间),由于“商品名”只由“商品号”决定,因此“商品名”对主键(商品号,销售时间)是部分函数依赖关系,即(商品号,销售时间)p?商品名。(2分)

传递函数依赖示例。设有关系模式销售(学号,姓名,所在系,系主任名),该模式的主键是(学号),由于“系主任名”只由“所在系”决定,因此商“系主任名”对主键(学号)是传递函数依赖关系。(2分)

四、综合应用题(每小题8分,共5题,共40分)

1.请写出创建如下表的SQL语句 商品表:

商品号:普通编码定长字符型,长度为10,主键; 商品名:普通编码定长字符型,长度为10,非空; 生产日期:小日期时间型,非空; 单价:整型,非空,取值大于0;

商品描述:统一字符编码,可变长类型,长度为200。

参考答案及评分要点: 参考答案

(1) CREATE TABLE 商品表(

(2) 商品号 CHAR(10) PRIMARY KEY, (3) 商品名 CHAR(10) NOT NULL,

(4) 生产日期 SMALLDATETIME NOT NULL,

(5) 单价 INT CHECK(单价>0) NOT NULL, (6) 商品描述 NVARCHAR(200) (7) ) 评分要点: (1)、(6)行:每行1分;(4)行:2分 (2)、(5):列名和类型对各得1分,(2)行的PRIMARY KEY 和(5)行CHECK各1分。

2.针对第1题给定的表,写出满足如下要求的SQL语句:查询单价1000元以上(包括1000)的商品名、单价和生产日期。。 参考答案及评分要点: 参考答案

SELECT 商品名, 单价, 生产日期 FROM 商品表

WHERE 单价 >= 1000 评分要点

SELECT部分书写正确得2分;FROM部分书写正确得2分;WHERE部分写对得4分。 3.设有学生表(学号,姓名,所在系)和选课表(学号,课程号,成绩)。写出满足如下要求的查询语句:查询计算机系学生的考试情况,列出姓名、课程号和成绩。 参考答案及评分要点: 参考答案

SELECT 姓名, 课程号, 成绩

FROM 学生表 JOIN 选课表 ON 学生表.学号=选课表.学号 WHERE 所在系 = '计算机系' 评分要点

SELECT部分书写正确得2分;FROM部分书写正确得4分;WHERE部分写对得2分。

4.设有商品表(商品型号,商品名,类别,单价)和销售表(商品型号,销售时间,销售数量)。有如下SQL语句:

CREATE VIEW v_is AS SELECT商品表.商品型号, SUM(销售数量)

FROM 商品表 JOIN 销售表 ON 商品表.商品型号 = 销售表.商品型号

WHERE 类别 = '冰箱' AND 销售时间 BETWEEN '2014/1/1' AND '2014/1/31'

GROUP BY商品表.商品型号

(1) 指出该语句所创建的对象是什么(2分)。 (2) 说明其中的查询语句的功能(6分)

参考答案及评分要点: 参考答案

(1) 视图。(2分)

(2) 查询2014年1月(1分)冰箱类商品(2分)中,每种型号的冰箱的销售总

数量(3分)。

5.程序应用题

设学生成绩表的结构为(学号、课程号、成绩),程序运行界面如图1所示。学号和课程号的数据类型是字符串型。进入界面后,用户首先选择学号(Combo1)、课程号(Combo2),姓名(Text1)和课程名(Text2)从数据库中自动读入;然后,用户输入对应的成绩(Text3),点击“确认”按钮后,将结果插入到学生成绩表中。请补充完成下列程序代码。

Command1

图1“增加记录”窗体运行界面

Private Sub Command1_Click() ‘声明一个记录集对象

Dim ADOrs As New Recordset

‘将记录集对象与已建立的数据库联接对象ADOcn绑定 ADOrs.ActiveConnection=ADOcn

‘第一步:在学生成绩表中查询是否存在关键字相同的记录 (1)拼写查询字符串

strSQL = (2)执行查询语句 strSQL

‘第二步:如果关键字重复,则退出程序 If Not Then

MsgBox “记录已存在,不能继续增加” Exit Sub End If

‘第三步:将结果插入到学生成绩表中

StrSQL=\Into 学生成绩表(学号,课程号,成绩) Values(’ \’, ’ \’,

\

StrSQL End Sub

参考答案及评分要点:

‘第一步:在学生成绩表中查询是否存在关键字相同的记录

strSQL=\学生成绩表 Where 学号=’\’And 课程号=’ \’\(本小点3分) ADOrs.Open StrSQL (本小点2分) ‘第二步:如果关键字重复,则退出程序 If Not ADOrs.EOF Then (本小点1分) MsgBox “记录已存在,不能继续增加” Exit Sub End If

‘第三步:将结果插入到学生成绩表中

StrSQL=\Into 学生成绩表(学号,课程号,成绩) Values(’ \’, ’ \’,

\

ADOcn.Execute StrSQL (本小点2分) End Sub

提供课程的教学大纲供大家参考

国家开放大学 计算机科学与技术(本科)

“数据库应用技术”课程教学大纲

(审定稿)

第一部分 大纲说明

一、课程的性质与任务

《数据库应用技术》课程是国家开放大学计算机科学与技术本科(专科起点)专业的统设必修课,4学分,72学时,其中授课40学时,实验32学时,开设一学期。

《数据库应用技术》是计算机科学中一门重要的专业基础课。主要学习数据库系统的基本概念、原理及应用。本课程以SQL Server数据库为操作环境。课程内容主要包括数据库系统的组成、关系数据库、数据库设计以及数据管理与维护等内容,同时讲解基于SQL Server的数据库应用系统的开发方法和实例。

要求学生通过本课程的学习,理解有关数据库系统的基本概念、基本理论,掌握相关的知识,初步掌握数据库设计方法,能在SQL Server环境中熟练完成建立数据库、关系表,对关系表中的数据进行增、删、改、查等操作,了解用VB.NET和ASP.NET开发数据库应用程序的基本方法。

二、与相关课程的关系

前导课程:计算机应用基础、C语言程序设计、数据结构、VB程序设计。 后序课程:软件工程

三、课程的教学方法和教学形式建议

数据库应用技术课程是一门理论性和实践性要求都很强的课程,在专业中具有承前启后的作用,是计算机专业的一门核心基础课程。如何根据实际问题的需要并结合具体的数据库环境实现数据库的设计与应用,是本课程的重点和难点。因此在教学中应注意以下几点:

1.注重基础、突出应用、强化数据库应用基本能力的训练。由浅入深、由简单到复杂、由特殊到一般讲解相关的数据库概念和原理。

2.增加实验教学的比重,保证学生的上机学时,对实验内容要制定实施方案和评测标准,使学生认真完成本课程所规定的实验,获得实际的数据库技术应用能力。

3.日常的面授辅导应着重于重点归纳、难点剖析以及实验的分析讨论等。 四、课程教学要求的层次

本课程的教学要求分为掌握、理解和了解三个层次。了解即能正确描述或列举有关概念和方法;理解是能正确叙述或解释有关概念和理论的含义,并且能够进行简单分析和应用;掌握是在理解的基础上,能够运用相关理论和方法分析解决常见的典型实际问题。

在课程考核中(涵盖实验内容),掌握的内容约占总分数的60?,理解的内容约占30?,了解的内容约占10?。

第二部分 媒体使用与教学过程建议

一、课程学时分配

课程教学总学时数为72学时,4学分,其中授课学时为40学时(含面授和录像学时)实验课学时为32学时。各章学时分配如下:

章 第1章 第2章 第3章 第4章 第5章 第6章 第7章 第8章 第9章 教学内容 数据库系统概述 关系数据库理论 创建数据库 T-SQL语言基础与关系表 数据操作语言 数据库其他对象管理 数据库管理与维护 数据库设计 数据库应用系统开发 授课学时 2学时 3学时 2学时 3学时 10学时 4学时 4学时 4学时 8学时 实验学时 2学时 2学时 10学时 3学时 3学时 12学时 合计 40学时 32学时

二、多种媒体教材的总体说明

本课程使用的教学媒体有:文字教材、录像教材、网络课程、IP课件和其他教学资源等。 1.文字教材

主要教学媒体。文字教材的内容是教学大纲所规定的教学基本内容,是本课程教与学和考核的基本依据。文字教材要求体系完整,适合成人自主学习的需求,体现开放大学教学规

律和特点。

2.录像教材

主要辅助媒体之一。充分利用视频教材直观性的特点,通过动画、演示等手段讲解抽象的概念和某些实验操作内容的细节。本课程的录像教材将讲授课程的全部知识点。

3.网络课程

网络课程将充分综合运用计算机网络技术和多种媒体技术,为本课程提供基于网络的教学内容及实施的教学活动,为学生提供交互式的、个性化的学习环境。

4.IP课件

提供基于本课程的考试辅导、习题讲解、新知识介绍或专题讲座等内容。 5.其它教材

根据课程特点,引入如计算机虚拟教学环境、基于PAD的全媒体课程等辅助教学资源。 充分利用网上资源提高学生自主学习的兴趣,帮助学生复习、掌握基本概念和基本方法,提高学生的动手能力以及解决实际问题的能力。

三、教学方式

1.网络课程

网络课程是本课程学习资源和信息的主要发布平台,是学习者获取知识、参与学习活动并与教师和同学沟通的重要场所,也是完成学习过程并通过形成性考核的有效途径。

本课程的网络课程主要包括视频授课、虚拟实验、学习活动、文本辅导、课程评价、考前练兵、在线答疑、学科新动态等栏目,以及普通高校的精品课程和公开课等热门网络资源链接等。

2.自学与面授辅导

自学是远程学习环境下学生完成学业的重要学习手段,学生以文字教材为主,辅以包含视频授课、文本辅导和评价作业为重要媒体的网络课程进行学习。网络资源和网上学习活动可加深学生对课程重难点内容的理解,提高数据库设计与应用的能力。网上教学资源与教学进度同步,解决学生在学习过程中遇到的问题。自学可以采取个人和小组学习等方式,学生应注意自学能力的培养,保证必要的自学时间。

作为远程教学的补充,面授辅导为学生提供了接触老师、获得疑难解答的重要途径。面授辅导课要紧密配合教材和网络课程,依据教学大纲进行辅导讲解。要注意运用启发式,采用讲解、讨论、答疑等方式,培养学生分析问题、解决问题的能力。

辅导教师要钻研教学大纲、教材,收看录像课,充分利用网络课程资源,认真备课,要指导学生完成实验并认真批改作业。 3.实验

实验是本课程的重要组成部分,由各地教学单位组织实施。学生应认真完成本课程所规定的实验,未做实验或实验不及格者没有资格参加本课程的期末考试。

四、考核

考核是对学生学习效果的检查和验收。本课程的考核采用期末终结性考核和形成性考核相结合的方式。期末终结性考核采用书面或基于网络考核,由国家开放大学根据教学大纲统一命题;形成性考核包括实验和平时作业,由各地教学单位组织实施并核定成绩。

第三部分 教学内容和教学要求

第一章 数据库系统概述(2学时) 教学内容:

1.1 数据库系统的发展 1.2 数据和数据模型

1.3 数据库系统的三级模式 1.4 数据库系统组成与功能

教学要求:

1.了解数据库系统的发展过程

2.理解数据数据模型的概念,包括层次模型、网状模型和关系模型 3. 理解数据库三级模式结构 4.理解数据库系统结构

5. 理解数据库管理系统的功能

第二章 关系数据库理论(3学时) 教学内容:

2.1 关系和关系模式 2.2 关系完整性 2.3 关系代数 2.4 函数依赖 2.5 关系规范化

教学要求:

1.理解关系的基本概念 2.掌握关系代数的运算 3.理解函数依赖的概念

4.掌握三个范式的定义、判断及转换方法

第三章 创建数据库(2学时) 教学内容:

3.1 SQL Server基础

特点、安装、常用工具的使用 3.2创建数据库

3.3 数据库空间管理

扩大和缩小数据库空间

教学要求:

1.了解SQL Server数据库管理系统的操作环境 2.掌握SQL Server数据库的构成及创建方法 3. 掌握数据库空间管理方法

第四章 T-SQL语言基础与关系表(3学时) 教学内容:

4.1 SQL语言特点与功能 4.2 T-SQL数据类型

4.3 关系表的定义与维护

教学要求:

1.了解SQL语言的特点 2.理解SQL语言的功能

3.掌握T-SQL的常用数据类型

4. 掌握T-SQL关系表的定义和修改方法

第五章 数据操作语言(10学时) 教学内容:

5.1 数据查询语句 5.1.1 简单查询语句

5.1.2 查询语句的统计功能 5.1.3 多表连接查询 5.1.4 CASE函数 5.1.5 子查询 5.2数据更新语句 5.2.1插入语句 5.2.2删除语句 5.2.3更改语句

教学要求:

1.掌握在SQL Server环境中执行数据操作语句的方法 2.理解子查询的作用和执行机制

3.掌握简单查询、多表连接查询、分组统计查询、CASE函数的使用 4. 掌握数据插入、删除和更改语句的使用

第六章 数据库其他对象管理(4学时) 教学内容: 6.1视图 6.2索引

6.3 存储过程 6.4 触发器

教学要求:

1.理解视图、索引、存储过程和触发器的作用 2.掌握视图的定义方法 3.掌握存储过程的定义方法 4. 掌握触发器的定义方法

第七章 数据库管理与维护(4学时) 教学内容:

7.1 事务的概念与作用 7.2数据库安全性 7.3数据库备份与恢复 7.4 数据导入与导出

教学要求:

1.理解事务的概念和性质

2.掌握在SQL Server环境中实现数据库安全管理的方法 3. 掌握在SQL Server环境中实现数据库备份与恢复的方法 4. 掌握在SQL Server环境中数据导入与导出的方法

第八章 数据库设计(4学时) 教学内容: 8.1 需求分析 8.2概念结构设计 8.3逻辑结构设计 8.4物理结构设计 8.5数据库实施

8.6 数据库运行和维护

教学要求:

1.了解数据库实施、运行和维护的基本工作内容 2.理解数据库结构设计每一步骤的工作内容 3.掌握概念结构设计、逻辑结构设计方法

第九章 数据库应用系统开发(8学时) 教学内容: 9.1 嵌入式SQL

9.2 C/S和B/S体系结构

9.3 C/S应用系统开发方法(VB.NET) 9.4 B/S应用系统开发方法(ASP.NET)

教学要求:

1.了解嵌入式SQL编程模式 2.理解C/S和B/S体系结构

3.掌握VB. NET、ASP. NET开发数据库应用系统的基本方法

第四部分 实验内容和实验要求

实验1:在SQL Server 2008创建数据库及表(4学时)

实验目的: SQL Server2008环境的使用,掌握在SQL Server中创建数据库及关系表的方法。

实验内容:

安装SQL Server 2008,在SQL Server Management Studio中通过图形化方法创建数据库,通过SQL语句创建关系表。

实验要求:

1. 配合第1章的理论讲解,理解数据库系统的体系结构。 2. 掌握配置管理器、SQL Server Management Studio工具的使用。

实验2:数据操作语句(10学时)

实验目的:练习Select、Insert、Delete、Update语句。 实验内容:

用实验1建立的学生数据库和关系表,首先执行给定的脚本输入教材中的样例数据,然后完成数据的查询、插入、删除、修改操作。

实验要求:

1.所有操作必须通过SSMS完成;

2.每执行一条查询、插入、删除或修改语句后,均要求通过SSMS查看执行结果及表中数据的变化情况;

3.将操作过程以屏幕抓图的方式拷贝,形成实验文档。

实验3:视图、存储过程和触发器(3学时)

实验目的:练习视图、存储过程和触发器的建立方法。 实验内容:

利用实验1和实验2建立的数据库和表,建立视图、带参数的存储过程以及实现数据完整性约束的触发器。

实验要求:

1.所有实验均在SQL Server SSMS中完成;

2.将查询过程以屏幕抓图的方式拷贝,形成实验文档。

实验4:数据库管理与维护(3学时)

实验目的:练习安全管理及数据库备份与恢复方法,练习数据的导入和导出方法。 实验内容:

1.数据库完全性:建立登录账户、数据库用户并为数据库用户授权。

2.数据库备份与恢复:首先对实验2所创建的数据库进行备份,然后随意插入或删除数据表中的记录,最后进行数据库恢复,查看恢复后的数据情况。

3. 将实验2建立的外键表的数据分别导出到Excel和文本文件中,删除该表中数据,再分别将导出的数据导入到表中。

实验要求:

1.所有操作均在SSMS中完成;

2.将操作过程以屏幕抓图的方式拷贝,形成实验文档。

实验5:数据库应用系统开发(12学时) 实验内容:

在上述所有实验基础上,要求学生选择一种自己熟悉的开发工具完成数据库应用系统的开发。数据库应用系统可以是B/S模式,也可以是C/S模式。

实验说明:

实验部分总计32学时,以SQL Server 2008为平台,帮助学生深入理解理论知识。其中实验1~4主要为验证型实验,实验5为综合型和设计型实验。

实验要求:

1.所开发的程序至少包括:连接数据库、对表的更新操作(插入、删除、修改)和查询操作。

2.实验文档至少包括以下内容:系统概述、功能结构图、主要功能界面,以及数据库连接、更新操作和查询操作等相关操作的源代码。

提供第1章习题及参考答案,供大家学习和复习使用。

第 1章 数据库系统概述

习题与参考答案

一. 单项选择题

1.下列关于数据库管理系统的说法,错误的是( C )。

A.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型

B.数据库管理系统对数据库文件的访问必须经过操作系统才能实现 C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件 D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名 2.下列关于用文件管理数据的说法,错误的是( D )。 A.用文件管理数据,难以提供应用程序对数据的独立性

B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序 C.用文件存储数据的方式难以实现数据访问的安全控制

D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用

户操作数据的效率 3.数据库系统的物理独立性是指( D )。 A.不会因为数据的变化而影响应用程序

B.不会因为数据存储结构的变化而影响应用程序

C.不会因为数据存储策略的变化而影响数据的存储结构 D.不会因为数据逻辑结构的变化而影响应用程序

4.数据库系统是由若干部分组成的。下列不属于数据库系统组成部分的是( B )。

A.数据库 C.应用程序 B.操作系统

D.数据库管理系统

5.数据库三级模式结构的划分,有利于( A )。

A. 数据的独立性 B. 管理数据库文件 C. 建立数据库 D. 操作系统管理数据库

6.在数据库的三级模式中,描述数据库中全体数据的逻辑结构和特征的是( B )。 A.内模式 B.模式 C. 外模式 D. 其他 7.在用数据模型描述数据时,一般要求数据模型要满足三个要求。下列描述中,不属于数据模型应满足要求的是( A )。 A.能够描述并发数据 B.能够真实地模拟现实世界 C.容易被业务人员理解 D.能够方便地在计算机上实现 8.数据模型三要素是指( B )。 A.数据结构、数据对象和数据共享

B.数据结构、数据操作和数据完整性约束 C.数据结构、数据操作和数据的安全控制 D.数据结构、数据操作和数据的可靠性

9.下列关于实体联系模型中联系的说法,错误的是( D )。 A.一个联系可以只与一个实体有关

B.一个联系可以与两个实体有关 C.一个联系可以与多个实体有关 D.一个联系可以不与任何实体有关

10.数据库系统中的三级模式以及模式间的映像提供了数据的独立性。下列关于两级映像的说法,正确的是( C )。 A.外模式到模式的映像是由应用程序实现的,模式到内模式的映像是由DBMS实现的

B.外模式到模式的映像是由DBMS实现的,模式到内模式的映像是由应用程序实现的 C.外模式到模式的映像以及模式到内模式的映像都是由DBMS实现的 D.外模式到模式的映像以及模式到内模式的映像都是由应用程序实现的

二.填空题

1. 数据是我们要处理的( 信息 ),数据模型是数据的( 组织方式 )。

2. 从现实系统的使用来说,数据的特征可分为( 静态特征 )和( 动态特征 )两部

分。

3. 数据模型的三要素是( 数据操作 )、( 数据结构 )、( 完整性约束 )。 4. 关系模型中,实体以及实体和实体之间的联系都用( 关系 )来表示。 5. 属性在E-R图中用圆角矩形表示,在矩形框内写上( 属性的名字 ),并用连线将属性

框与它所描述的( 实体 )联系起来。

6. 两个实体之间的联系通常分为三类,即( 一对一联系 )、( 一对多联系 )、( 多对多

联系 )。

7. 数据库的三级模式结构是指( 外模式 )、( 模式 )、( 内模式 )。

8. 数据库管理系统在三个模式之间提供了两层映像,即( 外模式/模式映像 )、( 模式/

内模式映像 )。

9. 数据库管理系统(DBMS)是对数据库进行管理的系统软件,位于应用程序和( 操作系

统 )之间。

10. 数据库管理系统(DBMS)提供的功能包括四个方面,分别是( 数据定义功能 )、

( 数据操作功能 )、( 数据库运行管理和控制功能 )、( 数据库的建立和维护功能 )。

三. 简答题

1. 文件管理方式在管理数据方面有哪些缺陷?

答:编写应用程序不方便;数据冗余不可避免;应用程序依赖性;不支持对文件的并发访问;数据间联系弱;难以按不同用户的愿望表示数据;无安全控制功能。

2. 与文件管理相比,数据库管理有哪些优点?

答:(1)相互关联的数据集合;(2)较少的数据冗余;(3)程序与数据相互独立;(4)保证数据的安全可靠;(5)最大限度地保证数据的正确性;(6)数据可以共享并能保证数据的一致性。

3. 数据独立性指的是什么?它能带来哪些好处? 答:数据独立性包括逻辑独立性和物理独立性两部分。物理独立性是指当数据的存储结构发生变化时,不影响应用程序的特性;逻辑独立性是指当表达现实世界的信息内容发生变化时,不影响应用程序的特性。这两个独立性使用户只需关心逻辑层即可,同时增强了应用程序的可维护性。

4. 实体之间的联系有哪几种?请为每一种联系举出一个例子。

答:有三种:1:1;1:n;m:n。1:1示例:系和系主任。1:n示例:班和学生;m:n示例:教师和学生。

5. 说明实体-联系模型中的实体、属性和联系的概念。 答:实体是具有公共性质的并可相互区分的现实世界对象的集合。属性是实体所具有的特征或性质。联系是实体之间的关联关系。

四.综合应用题

1. 指明下列实体间联系的种类:

1) 教研室和教师(假设一个教师只属于一个教研室,一个教研室可有多名教师)。 2) 商店和顾客。 3) 国家和首都。

答:1)一对多;2)多对多;3)一对一

提供第2章习题及参考答案供大家学习和复习使用

第 2 章 关系数据库理论

习题与参考答案

一.单项选择题

1.下列不属于数据模型三要素的是( C )。 A.数据结构 B.数据操作

C.数据库管理系统 D.数据完整性约束

2.下列约束属于应用级约束的是( C )。 A.实体完整性 B.参照完整性

C.用户定义的完整性 D.引用完整性

3.下列关于传统关系运算的说法,错误的是( B )。

A.集合的并运算要求参与运算的两个关系必须具有相同的目

B.有m目x行数据的关系R和有n目y行数据的关系S进行笛卡尔积运算,其结果是有(m+n)目和(x+y)行数据的关系

C.对m目的关系R进行选择运算,其结果关系一定也是m目的

D.对m行数据的关系R进行投影运算,其结果关系的行数可能小于m

3.下列关于自然连接的说法,错误的是( B )。 A.自然连接的连接条件一定是等值连接

B.进行自然连接的两个关系必须具有相同数目的列 C.对两个关系进行相同条件的自然连接和等值连接,自然连接结果的列个数一定少于等值连接结果的列个数

D.自然连接是一种特殊的等值连接

4.下列关于集合并运算的说法,正确的是( C )。 A.进行并运算的两个关系必须具有相同数目的行个数

B.进行并运算的两个关系必须具有相同数目的行个数和列个数 C.进行并运算的两个关系的列个数必须相同,对应列的语义相同

D.如果两个集合包含相同的数据行,则这个关系的并运算结果也将包含这些重复的数据行

5.对关系模式进行规范化的主要目的是( B )。 A.提高数据操作效率 B.维护数据的一致性 C.加强数据的安全性 D.为用户提供更快捷的数据操作

6.如果有函数依赖X→Y,并且对X的某个真子集X’,有X’→Y成立,则称( B )。 A.Y完全函数依赖于X

B.Y部分函数依赖于X C.X完全函数依赖于Y D.X部分函数依赖于Y

7.下列关于第三范式的说法,错误的是( D )。 A.第三范式的关系模式一定是第二范式的 B.第三范式的关系模式一定也是第一范式的

C.第三范式的关系模式一定不包含部分函数依赖和传递函数依赖

D.第三范式的关系模式一定不包含传递函数依赖,但可以包含部分函数依赖

8.有关系模式:学生(学号,姓名,所在系,系主任),设一个系只有一个系主任,则该关系模式至少属于( B )。 A.第一范式 B.第二范式 C.第三范式 D.BC范式

二.填空题

1. 关系模型的数据操作主要包括四种:( 查询 )、( 插入 )、( 删除 )和( 更改 )

数据。

2. 在关系模型中一般将数据完整性分为三类,即( 实体完整性 )、( 参照完整性 )

和用户定义的完整性。

3. 二维表中的每列数据称为一个( 属性 ),也叫字段。二维表中的每行数据称为一个( 元

组 ),也可称为记录值。

4. 实体完整性是保证关系中的每个元组都是可识别的和( 惟一的 )。 5. 关系代数的运算可分为以下两大类:( 传统的集合运算 )和( 专门的关系运

算 )。

三.简答题

1. 试述关系模型的三个组成部分。

答:数据结构、数据操作和完整性约束。

2. 解释下列术语的含义: (1) 主键 (2) 候选键 (3) 关系模式 答:(1)主键:用于惟一确定一个元组的最小属性组。 (2)候选键:如果一个属性或属性集的值能够惟一标识一个关系的元组而又不包含多余的属性,则称该属性或属性集为候选键。

(3)关系模式:二维表的结构称为关系模式,或者说,关系模式就是二维表的表框架或表头结构。

3. 关系数据库的三个完整性约束是什么?各是什么含义?

答:实体完整性、参照完整性和用户定义的完整性。实体完整性指关系数据库中所有的表都必须有主键。参照完整性用于描述和约束实体之间的关联关系。用户定义的完整性是针对某

一具体应用领域定义的数据约束条件,它反映某一具体应用所涉及的数据必须满足应用语义的要求。

四.综合应用题

1. 有三个关系,student:Sno(学号),Sname(姓名),Ssex(性别),Sage(年龄),Sdept

(所在系)。

Course:Cno(课程号),Cname(课程名),Credit(学分),Semester(开课学期),Pcno(直接先修课)。

SC:Sno(学号),Cno(课程号),Grade(成绩)。

表1 Student

Sno 201211101 201211102 201211103 201221101 201221102 Sname 李勇 刘晨 王敏 张立 吴宾 Ssex 男 男 女 男 女 表2 Course

Cno C001 C002 C003 C004 C005 Cname 高等数学 大学英语 计算机文化学 VB 数据库基础 Credit 4 3 2 2 4 表3 SC

Sno 201211101 201211101 201211101 201211102 201211102 201211102 201221102 201221102 201221102 Cno C001 C002 C003 C001 C002 C004 C001 C004 C005 Grade 96 80 84 92 90 84 76 85 73 Semester 1 2 2 3 4 Pcno NULL NULL NULL C004 C003 Sage 21 20 20 20 19 Sdept 计算机系 计算机系 计算机系 信息管理系 信息管理系 试用关系代数表达式完成下列查询: (1)查询“信息管理系”学生的选课情况,列出学号、姓名、课程号和成绩。 (2)查询“数据库基础”课程的考试情况,列出学生姓名、所在系和考试成绩。 (3)查询考试成绩高于80分的学生的姓名、课程名和成绩。 (4)查询计算机系没选VB的学生姓名。 答:

(1)∏Sno,Sname,Cno,Grade(σ

Sdept=‘信息管理系‘(Student) SC)

(2)∏Sname,Sdept,Grade(σCname=‘数据库基础‘(Course)SCStudent) (3)∏Sname,Cname,Grade(CourseσGrade>=80(SC)Student) (4)∏Sname(σSdept=‘计算机系‘(Student)) –

∏Sname(σSdept=‘计算机系‘(Student)SCσCname=‘VB‘(Course))

2. 设有关系模式:学生修课(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。

设一个学生可选多门课程,一门课程可以被多名学生选。每位学生由学号惟一标识,一个学生只在一个系学习;每门课程由课程号惟一标识。每个学生选的每门课程有惟一的成绩。

(1) 请指出此关系模式的候选键。 (2) 写出该关系模式的函数依赖集。

(3) 该关系模式属于第几范式?并简单说明理由。

(4) 若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关

系模式的主键和外键。 答:(1)候选键:(学号,课程号)

(2)学号→姓名,学号→所在系,学号→性别,课程号→课程名,课程号→学分, (学号,课程号)→成绩

(3)属于第二范式,因为存在部分函数依赖:学号→姓名。 (4)第三范式关系模式:

学生(学号,姓名,所在系,性别) 课程(课程号,课程名,学分) 考试(学号,课程号,成绩),学号为引用学生的外键,课程号为引用课程的外键。 3. 设有关系模式:学生(学号,姓名,所在系,班号,班主任,系主任),其语义为:一

个学生只在一个系的一个班学习,一个系只有一个系主任,一个班只有一名班主任,一个系可以有多个班。

(1) 请指出此关系模式的候选键。 (2) 写出该关系模式的函数依赖集。

(3) 该关系模式属于第几范式?并简单说明理由。

(4) 若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后的每个关

系模式的主键和外键。

解:(1)候选键:学号

(2)学号→姓名,学号→所在系,学号→班号,班号→班主任,所在系→系主任 (3)第二范式,因为有:学号→班号,班号→班主任,因此存在传递函数依赖:

学号

传递班主任

(4)第三范式关系模式:

学生(学号,姓名,所在系,班号),班号为引用班的外键,所在系为引用系的外键。 班(班号,班主任) 系(系名,系主任)

提供第3章习题及参考答案供大家学习和复习使用

第3章 创建数据库

习题及参考答案

一.单项选择题

1.下列属于SQL Server 2008最核心服务的是( A )。 A.数据库引擎服务 B.SQL Server Management Studio C.SQL Server配置管理器 D.SQL Server 管理工具 2.下列关于SQL Server 2008数据库的说法,正确的是( A )。

A. 一个数据库可由多个数据文件和多个日志文件组成

B. 一个数据库只能包含一个日志文件,但可包含多个数据文件 C. 一个数据库的所有数据文件必须存放在相同的物理位置

D. 一个数据库的数据文件和日志文件必须存放在不同的物理位置 3.下列关于扩大SQL Server 2008数据库空间的说法,错误的是( D )。

A. 可以扩大数据文件和日志文件的空间

B. 可以通过添加新文件的方法扩大数据库空间 C. 可以直接扩大数据文件的空间

D. 只能通过添加新文件的方法扩大日志的空间 4.下列关于收缩SQL Server 2008数据库空间的说法,错误的是( C )。

A. 可以收缩某个指定数据文件的空间 B. 可以收缩某个指定日志文件的空间

C. 收缩数据文件空间时不能小于该文件的初始大小

D. 收缩数据库有缩小整个数据库空间大小和缩小某个文件大小两种方式

二、判断题

1. 在一台计算机上安装一次SQL Server时,就生成了一个实例。在一台计算机上只能安装

一个默认实例,同时也只能安装一个命名实例。( ╳ ) 2. SSMS工具提供了图形化的操作界面来创建和维护对象,下拉列表框列出了当前查询编辑器所连接的数据库服务器上的所有数据库,表示当前正在操作的

数据库是master。( √ )

3. Tempdb数据库是系统自动生成的临时数据库,用于保存临时对象或中间结果集。( √ ) 4. Msdb数据库是用户必须建立的,用作SQL Server实例上创建的所有数据库的模板。

( ╳ )

5. 日志文件的推荐扩展名为.ldf,用于存放恢复数据库的所有日志信息。每个数据库只能

有一个日志文件。( ╳ )

6. 逻辑文件名是在所有SQL语句中引用物理文件时所使用的名称。物理文件名包括存储文

件的路径以及物理文件名本身。( √ )

7. 数据库的空间会出现不够用的情况,如果日志空间不够了则意味着不能再向数据库中插

入数据;如果数据空间不够了,则意味着不能再对数据库数据进行任何修改操作。( ╳ )

二.简答题

1. SQL Server 2008最核心的服务是什么?

答:数据库引擎服务。

2. 启动服务使用的是SQL Server 2008的哪个工具? 答:SQL Server配置管理器。

3. 根据数据库用途的不同,SQL Server将数据库分为哪两类? 答:系统数据库和用户数据库。

4. SQL Server数据库由几类文件组成?这些文件的推荐扩展名分别是什么?

答:由2类文件组成:数据文件和日志文件。主要数据文件的推荐扩展名为mdf,次要数据文件的推荐扩展名为ndf,日志文件的推荐扩展名为ldf。

5. SQL Server中一个数据库可以包含几个主要数据文件?几个次要数据文件?几个日志文

件?

答:一个数据库有且仅能有1个主要数据文件,可包含0到多个次要数据文件,1到多个日志文件。

6. 定义数据文件和日志文件需要指定的信息包含哪些?

答:包含:逻辑文件名、物理存储位置及文件名、初始大小、增长方式、最大大小限制。

提供第4章习题及参考答案供大家学习和复习使用

第4章 SQL语言基础与关系表

习题与参考答案

一. 单项选择题

1.下列所述功能中,不属于SQL语言功能的是( D )。 A.数据表的定义功能 B.数据查询功能 C.数据增、删、改功能 D.提供方便的用户操作界面功能

2.设某职工表中有用于存放年龄(整数)的列,下列类型中最适合年龄列的是( C )。 A.int B.smallint C.tinyint D.bit 3.设某学生表中有用于存放学生编号的列,下列类型中最适合的是( D )。 A.int B.date C.tinyint D.char 4.下列约束中用于限制列的取值范围的约束是( B )。 A.PRIMARY KEY B.CHECK C.DEFAULT D. UNIQUE 5.下列约束中用于限制列取值不重的约束是( D )。

A.PRIMARY KEY C.DEFAULT

B.CHECK

D. UNIQUE

6.下列约束中用于实现实体完整性的是( A )。 A.PRIMARY KEY B.CHECK C.DEFAULT D. UNIQUE

7.下列关于DEFAULT约束的说法,错误的是( D )。 A.一个DEFAULT约束只能约束表中的一个列 B.在一个表上可以定义多个DEFAULT约束 C.DEFAULT只能定义在列级完整性约束处

D.在列级完整性约束和表级完整性约束处都可以定义DEFAULT约束 8.下列为变量赋值的语句中,错误的是( D )。 A.SET @X = 10 B.SELECT @X = 10 C.SET @X = 10 + 10 D. SET @X = 10 + 'A'

9.设有表T,现要在该表新增加一个列,列名为:c1,类型为int。下列能实现该功能的语句是( A )。

A.ALTER TABLE T ADD COLUMN c1 int B.ALTER TABLE T ADD (c1 int)

C.ALTER TABLE T ADD COLUMN c1 D.ALTER TABLE T ADD c1 10.设有表M,将其中的Type列的数据类型改为NCHAR(4)。下列能实现该功能的语句是( B )。

A.ALTER TABLE M ADD COLUMN Type NCHAR(4) B.ALTER TABLE M ALTER COLUMN Type NCHAR(4) C.ALTER TABLE M DROP COLUMN Type NCHAR(4) D.ALTER TABLE M ALTER Type NCHAR(4) 11. 下列( B )固定占用10个字节的空间。 A.varchar(10) B.char(10) C.nchar(10) D.nvarchar(10)

12. 关于 numeric(p,s)说法错误的是( C )。 A.p代表整个数值的数字位数 B.q代表小数点后的数字位数 C.numeric(p,s)是近似数值类型 D.最大的存储空间是17字节

二.判断题

1. decimal(p,s)数据类型属于字符型。( ╳ )

2. /* */ 之间的内容用于表示注释,对程序无影响。( √ ) 3.'Good' + morning的结果为:'Good morning'。( ╳ )

4. Ssex NCHAR(1) DEFAULT '男'语句中的DEFAULT约束表示Ssex变量的默认值为'男'。( √ ) 5. Sage TINYINT CHECK(Sage>=22 AND Sage<=60)中的变量Sage只能取值在22到60之间。( √ )

三.简答题

1. 简述SQL语言的功能,每个功能的作用是什么?

答:SQL按其功能可分为四大部分:数据定义、数据控制、数据查询和数据操作。数据定义功能用于定义、删除和修改数据库中的对象;数据查询功能用于实现查询数据的功能,查询数据是数据库中使用最多的操作;数据操作功能用于增加、删除和修改数据;数据控制功能用于控制用户对数据库的操作权限。

2. Transact-SQL支持的主要数据类型有哪些?

答:数值类型(包括准确数值类型和浮点数值类型)、字符串类型(包括统一字符编码的字符串类型和普通字符编码的字符串类型)、日期时间类型以及二进制数据类型。

四.综合应用题

例1.计算两个变量的和,然后显示其结果:

DECLARE @x int = 10, @y int = 20, @z int SET @z = @x + @y

Print @z

解析:

DECLARE @x int = 10, @y int = 20, @z int

声明了三个整型变量x,y,z,其中x的初值为10,y的初值为20。 利用SET语句为z赋值

Print语句的作用是向客户端返回Z的值。

例2. If语句使用示例。

DECLARE @x int, @y int, @z int SET @x = 40 SET @y = 30 IF (@x > @y )

SET @z = @x - @y ELSE

SET @z = @y - @x Print @z 解析:

语句DECLARE @x int, @y int, @z int 声明了三个整型变量x,y,z,

语句SET @x = 40和SET @y = 30给出变量x的初值是40,y的初值是30,

语句IF (@x > @y ) 进行判断,决定进入哪个分支。 本例中,程序进入SET @z = @x - @y Z值为10。

例3.计算1 + 2 + 3 + … + 100的值。 解析:

DECLARE @i int, @sum int SET @i = 1 SET @sum = 0 WHILE @i <= 100 BEGIN

SET @sum = @sum + @i SET @i = @i + 1 END

PRINT @sum

例4.创建表并给出约束。

用SQL语句创建如下三张表:学生表(Student)、课程表(Course)和学生修课表(SC),这三张表的结构和约束如表4-1到表4-3所示。

表4-1 Student表结构

列名 Sno Sname SID Ssex Sage Sdept 含义 学号 姓名 身份证号 性别 年龄 所在系 数据类型 CHAR(7) NCHAR(5) CHAR(18) NCHAR(1) TINYINT NVARCHAR(20) 表4-2 Course表结构

列名 Cno Cname Credit Semester 含义 课程号 课程名 学分 学期 数据类型 CHAR(6) NVARCHAR(20) NUMERIC(3,1) TINYINT 表4-3 SC表结构

列名 含义 数据类型 约束 主键 非空 大于0 约束 主键 非空 取值不重 默认值为“男” 取值范围为15~45 约束 Sno Cno 学号 课程名 CHAR(7) CHAR(6) TINYINT 主键,引用Student的外键 主键,引用Course的外键 Grade 成绩 解析:

创建满足约束条件的上述三张表的SQL语句如下: CREATE TABLE Student (

Sno CHAR(9) PRIMARY KEY, Sname NCHAR(5) NOT NULL, SID CHAR(18) UNIQUE,

Ssex NCHAR(1) DEFAULT '男',

Sage TINYINT CHECK(Sage>=15 AND Sage<=45), Sdept NVARCHAR(20) )

CREATE TABLE Course (

Cno CHAR(6) PRIMARY KEY, Cname NVARCHAR(20) NOT NULL,

Credit NUMERIC(3,1) CHECK(Credit>0), Semester TINYINT )

CREATE TABLE SC (

Sno CHAR(9) NOT NULL, Cno CHAR(6) NOT NULL, Grade TINYINT,

PRIMARY KEY (Sno, Cno),

FOREIGN KEY (Sno) REFERENCES Student(Sno), FOREIGN KEY (Cno) REFERENCES Course(Cno) )

例5.为SC表添加“修课类别”列,此列的定义为:Type NCHAR(1),允许空。

解析:

ALTER TABLE SC ADD Type NCHAR(1) 例6.将新添加的Type列的数据类型改为NCHAR(2)。

解析:

ALTER TABLE SC ALTER COLUMN Type NCHAR(2) 例7.为Type列添加限定取值范围为{必修,重修,选修}的约束。

解析:

ALTER TABLE SC ADD CHECK(Type IN ('必修', '重修', '选修') )

例8.删除SC表的“Type”列。

解析:

ALTER TABLE SC DROP COLUMN Type

例9.“图书表”结构如下:

书号:统一字符编码定长类型,长度为6,主键; 书名:统一字符编码可变长类型,长度为30,非空; 第一作者:普通编码定长字符类型,长度为10,非空; 出版日期:日期型;

价格:定点小数,小数部分1位,整数部分3位,默认值为20。 写出创建表的SQL语句,要求在定义表的同时定义数据的完整性约束。(表名和列名用中文)

解析:

create table 图书表(

书号 nchar(6) primary key, 书名 nvarchar(30) not null, 第一作者 char(10) not null, 出版日期 date ,

价格 numeric(4,1) default 20 )

10. 为图书表添加“印刷数量”列,类型为整数。

解析:

alter table 图书表 add 印刷数量 int

提供第5章习题及参考答案供大家学习和复习使用

第 5 章 数据操作语言

习题与参考答案

一.单项选择题

1. 当关系R和S进行连接操作时,如果R中的元组不满足连接条件,在连接结果中也会

将这些记录保留下来的操作是( A )。 A.左外连接 B.右外连接 C.内连接 D.自连接 2. 下列聚合函数中,不忽略空值的是( D )。 A.SUM(列名) B.MAX(列名) C.AVG(列名) D.COUNT(*)

3.下列查询语句中,错误的是( B )。

A. SELECT Sno, COUNT(*) FROM SC GROUP BY Sno

B. SELECT Sno FROM SC GROUP BY Sno WHERE COUNT(*) > 3 C. SELECT Sno FROM SC GROUP BY Sno HAVING COUNT(*) > 3 D. SELECT Sno FROM SC GROUP BY Sno

4.现要利用Student表查询年龄最小的学生姓名和年龄。下列实现此功能的查询语句中,正确的是( D )。

A. SELECT Sname, MIN(Sage) FROM Student

B. SELECT Sname, Sage FROM Student WHERE Sage = MIN(Sage)

C. SELECT TOP 1 Sname, Sage FROM Student

D. SELECT TOP 1 Sname, Sage FROM Student ORDER BY Sage

5.设SC表中记录成绩的列为:Grade,类型为int。若在查询成绩时,希望将成绩按‘优’、‘良’、‘中’、‘及格’和‘不及格’形式显示,正确的Case函数是( C )。

A. Case Grade

When 90~100 THEN '优' When 80~89 THEN '良' When 70~79 THEN '中' When 60~69 THEN '及格' Else '不及格' End B. Case

When Grade between 90 and 100 THEN Grade = '优' When Grade between 80 and 89 THEN Grade = '良' When Grade between 70 and 79 THEN Grade = '中' When Grade between 60 and 69 THEN Grade = '及格' Else Grade = '不及格' End C. Case

When Grade between 90 and 100 THEN '优' When Grade between 80 and 89 THEN '良' When Grade between 70 and 79 THEN '中' When Grade between 60 and 69 THEN '及格' Else '不及格' End

D. Case Grade

When 90~100 THEN Grade = '优' When 80~89 THEN Grade = '良' When 70~79 THEN Grade = '中' When 60~69 THEN Grade = '及格' Else Grade = '不及格'

End

6.下列SQL语句中,用于修改表数据的语句是( C )。

A.ALTER B.SELECT C.UPDATE D.INSERT

7.设有Teachers表,该表的定义如下: CREATE TABLE Teachers(

Tno CHAR(8) PRIMARY KEY, Tname VARCHAR(10) NOT NULL,

Age TINYINT CHECK(Age BETWEEN 25 AND 65) )

下列插入语句中,不能正确执行的是( D )。

A.INSERT INTO Teachers VALUES('T100','张宏',NULL)

B.INSERT INTO Teachers(Tno,Tname,Age) VALUES('T100','张宏',30)

C.INSERT INTO Teachers(Tno,Tname) VALUES('T100','张宏') D.INSERT INTO Teachers VALUES('T100','张宏')

8.设数据库中已有教材中的Student(Sno,Sname,Ssex,Sage,Sdept)、Course(Cno,Cname,Credit,Semster)和SC(Sno,Cno,Grade)表。现要查询学生选的第2学期开设课程的情况,只需列出学号、姓名、所在系和所选的课程号。该查询涉及到的表是( D )。

A.仅Student表 B.仅Student和SC表 C.仅Student和Course表 D.Student、SC和Course表 9.下列删除计算机系学生(在student表中)的修课记录(在SC表中)的语句,正确的是( B )。

A.DELETE FROM SC JOIN Student b ON S.Sno = b.Sno WHERE Sdept = '计算机系'

B.DELETE FROM SC FROM SC JOIN Student b ON SC.Sno = b.Sno WHERE Sdept = '计算机系'

C.DELETE FROM Student WHERE Sdept = '计算机系' D.DELETE FROM SC WHERE Sdept = '计算机系'

二.判断题

1. SELECT * FROM Student WHERE Sname LIKE '张_' 语句中的'张_' 用于查找姓张的

学生。( ╳ )

2. SELECT * FROM Student WHERE Sname LIKE '[张李刘]%' 语句可以查找姓张、李、

刘的学生。( √ )

3. SELECT COUNT(DISTINCT Sno) FROM SC 语句用于统计学生的总人数。( ╳ ) 4. HAVING子句用于对分组后的统计结果再进行过滤,它用于组而不是对单个记录。

( √ )

5. SELECT * FROM Student INNER JOIN SC

ON Student.Sno = SC.Sno 语句可将Student与 SC连接起来。( √ )

三.简答题

1. 在聚合函数中,哪个函数在统计时不考虑NULL。 答:COUNT(*)

2. 在LIKE运算符中“%”的作用是什么? 答:匹配0个或多个字符。

3. WHERE Age BETWEEN 20 AND 30子句,查找的Age范围是多少? 答:Age大于等于20并且小于等于30

4. WHERE Sdept NOT IN ('CS', 'IS', 'MA'),查找的数据是什么? 答:查找'CS', 'IS', 'MA'三个系之外的其他系。

5. 自连接与普通内连接的主要区别是什么?

答:自连接中进行连接操作的表在物理上是一张表,而普通内连接进行连接的表在物理上是两张表。

6. 外连接与内连接的主要区别是什么?

答:进行外连接的两个表中,可以有一张表不满足连接条件,而进行内连接的两个表必须都满足连接条件。

7. 相关子查询与嵌套子查询在执行方面的主要区别是什么?

答:相关子查询的执行过程是先外后内,而嵌套子查询的执行过程是先内后外。而且相关子查询中必须有与外层查询的关联,而嵌套子查询中,内、外层查询之间没有关联关系。

8. 对统计结果的筛选应该使用哪个子句完成? 答:HAVING子句

9. 在排序子句中,排序依据列的前后顺序是否重要?ORDER BY C1,C2子句对数据的排

序顺序是什么?

答:重要,系统会按列的先后顺序进行排序。

先按C1列进行排序,在C1列值相同时再按C2列进行排序。

10. TOP 子句的作用是什么?

答:在查询结果产生后,提取结果的前若干行数据。

提供第6章习题及参考答案供大家学习和复习使用

第六章 数据库其他对象管理

习题与参考答案

一. 单项选择题

1.下列关于视图的说法,正确的是( B )。

A.视图与基本表一样,也存储数据

B.对视图的操作最终都转换为对基本表的操作 C.视图的数据源只能是基本表

D.所有视图都可以实现对数据的增、删、改、查操作 2.在视图的定义语句中,只能包含( A )。

A.数据查询语句 C.创建表的语句

B.数据增、删、改语句 D.全部都可以

3.视图对应数据库三级模式中的( A )。

A. 外模式 B. 内模式 C. 模式 4.下列关于视图的说法,正确的是( B )。

A.通过视图可以提高数据查询效率 B.视图提供了数据的逻辑独立性

D. 其他

C.视图只能建立在基本表上

D.定义视图的语句可以包含数据更改语句 5.创建视图的主要作用是( D )。

A.提高数据查询效率 C.维护数据的一致性

B.维护数据的完整性约束 D.提供用户视角的数据

6.设有学生表(学号,姓名,所在系)。下列建立统计每个系的学生人数的视图语句中,正确的是( D )。

A.CREATE VIEW v1 AS

SELECT 所在系, COUNT(*) FROM 学生表 GROUP BY 所在系 B.CREATE VIEW v1 AS

SELECT 所在系, SUM(*) FROM 学生表 GROUP BY 所在系 C.CREATE VIEW v1(系名,人数) AS

SELECT 所在系, SUM(*) FROM 学生表 GROUP BY 所在系 D.CREATE VIEW v1(系名,人数) AS

SELECT 所在系, COUNT(*) FROM 学生表 GROUP BY 所在系 7.设用户在某数据库中经常需要进行如下查询操作:

SELECT * FROM T WHERE C1='A' ORDER BY C2

设T表中已在C1列上建立了主键约束,且该表只建有该约束。为提高该查询的执行效率,下列方法中可行的是( C )。

A.在C1列上建立一个聚集索引,在C2列上建立一个非聚集索引 B.在C1和C2列上分别建立一个非聚集索引 C.在C2列上建立一个非聚集索引

D.在C1和C2列上建立一个组合的非聚集索引

8.下列关于索引的说法,正确的是( C )。

A.只要建立了索引就可以加快数据的查询效率 B.在一个表上可以创建多个聚集索引

C.在一个表上可以建立多个唯一的非聚集索引

D.索引会影响数据插入和更新的执行效率,但不会影响删除数据的执行效率 9.创建存储过程的用处主要是( A )。

A.提高数据操作效率 C.实现复杂的业务规则

B.维护数据的一致性 D.增强引用完整性

10.下列关于存储过程的说法,正确的是( A )。

A.在定义存储过程的代码中可以包含数据的增、删、改、查语句 B.用户可以向存储过程传递参数,但不能输出存储过程产生的结果 C.存储过程的执行是在客户端完成的

D.存储过程是存储在客户端的可执行代码段 11.下列修改存储过程P1的语句,正确的是( B )。

A.ALTER P1 B.ALTER PROC P1 C.MODIFY P1 D.MODIFY PROC P1 12.下列删除存储过程P1的语句,正确的是( D )。

A.DELETE P1 C.DROP P1

13.触发器的主要作用是( D )。

A.提高数据的查询效率 C.加强数据的保密性

B.DELETE PROC P1 D.DROP PROC P1

B.增强数据的安全性 D.实现复杂的约束

14.现有学生表和修课表,其结构为:

学生表(学号,姓名,入学日期,毕业日期) 修课表(学号,课程号,考试日期,成绩)

现要求修课表中的考试日期必须在学生表中相应学生的入学日期和毕业日期之间。下列实现方法中,正确的是( B )。

A.在修课表的考试日期列上定义一个CHECK约束 B.在修课表上建立一个插入和更新操作的触发器 C.在学生表上建立一个插入和更新操作的触发器 D.在修课表的考试日期列上定义一个外键引用约束 15.设在SC(Sno,Cno,Grade)表上定义了触发器:

CREATE TRIGGER tri1 ON SC AFTER INSERT …

当执行语句:INSERT INTO SC VALUES('s001', 'c01',90)

会引发该触发器执行。下列关于触发器执行时表中数据的说法,正确的是( A )。 A.SC表和INSERTED表中均包含新插入的数据 B.SC表和INSERTED表中均不包含新插入的数据

C.SC表中包含新插入的数据,INSERTED表中不包含新插入的数据 D.SC表中不包含新插入的数据,INSERTED表中包含新插入的数据

16.当执行由UPDATE语句引发的触发器时,下列关于该触发器临时工作表的说法,正确的是( C )。

A.系统会自动产生UPDATED表来存放更改前的数据 B.系统会自动产生UPDATED表来存放更改后的数据

C.系统会自动产生INSERTED表和DELETED表,用INSERTED表存放更改后的数据,用DELETED表存放更改前的数据

D.系统会自动产生INSERTED表和DELETED表,用INSERTED表存放更改前的数据,用DELETED表存放更改后的数据 二. 判断题

1. 视图是一个虚表,数据库中只存储视图的定义,而不存储视图所包含的数据,这些数据

仍存放在原来的基本表中。( √ )

2. 当基本表中的数据发生变化时,从视图中查询出的数据并不随之变化。( ╳ ) 3. SQL Server中的索引一般采用B树结构。( √ )

4. 使用索引的一个优点是,在对数据进行插入、更改和删除操作时,不需要对索引进行相

应维护,就可以使索引与数据保持一致。( ╳ )

5. 由于聚集索引项决定了表中数据的物理存储顺序,因此一个表只能包含一个聚集索引。( √ )

6. 非聚集索引并不改变数据的物理存储顺序,可以在一个表上建立多个非聚集索引。( √ )

7. 存储过程是存储在数据库服务器端供客户端调用执行的SQL语句。( √ )

8. 如果存储过程有输入参数并且没有为输入参数指定默认值,则在调用存储过程时,会自

动生成一个常量值。( ╳ )

9. UPDATE、INSERT和DELETE都可引发触发器代码的执行。( √ ) 10. 触发器名在数据库中可以不是唯一的。( ╳ )

三. 简答题

1. 试说明使用视图的好处。

答:利用视图可以简化客户端的数据查询语句,使用户能从多角度看待同一数据,可以提高数据的安全性,视图对应数据库三级模式中的外模式,因此提供了一定程度的逻辑独立性。

2. 使用视图可以加快数据的查询速度,这句话对吗?为什么?

答:不对,因为通过视图查询数据时,比直接针对基本表查询数据多了一个转换过程,即从外模式到模式的转换。

3. 索引的作用是什么?

答:索引可以加快数据的查询效率。

4. 索引分为哪几种类型?分别是什么?它们的主要区别是什么?

答:分为聚集索引和非聚集索引两种。聚集索引会对数据进行物理排序,非聚集索引不对数据进行物理排序。

5. 聚集索引一定是唯一索引,对吗?反之呢? 答:不对。反之也不对。

6. 在建立聚集索引时,数据库管理系统首先要将数据按聚集索引列进行物理排序,对吗? 答:对。

7. 不管对表进行什么类型的操作,在表上建立的索引越多越能提高操作效率,对吗? 答:不对。

8. 存储过程的作用是什么?为什么利用存储过程可以提高数据的操作效率? 答:存储过程可以提供模块化程序设计,提高数据操作效率,简化客户端编程。

因为数据库管理系统是在创建存储过程时对SQL代码进行分析和优化,并在第一次执行时进行语法检查和编译,将编译好的可执行代码存储在内存的一个专门缓冲区中,以后再执行此存储过程时,只需直接执行内存中的可执行代码即可。

9. 存储过程的参数有几种形式?

答:存储过程的参数有输入参数和输出参数两种。

10. 触发器的作用是什么? 前触发和后触发的主要区别是什么?

答:触发器可以实现复杂的完整性约束,同时还可以实现一些商业规则。

前触发器并不真正执行引发触发器执行才数据操作语句;后触发器是在引发触发器执行的数据操作语句执行完后,再引发触发器执行。

11. 插入操作产生的临时工作表叫什么?它存放的是什么数据?

答: 插入操作产生的临时工作表叫INSERTED,用于存放新插入的数据。

12. 删除操作产生的临时工作表叫什么?它存放的是什么数据?

答:删除操作产生的临时工作表叫DELETED,用于存放被删除的数据。

13. 更改操作产生的两个临时工作表分别叫什么?它们分别存放的是什么数据?

答:更改操作产生的一个临时工作表叫INSERTED:用于存放更新后的数据;更改操作产生的另一个临时工作表叫DELETED:用于存放更新前的数据。

提供第7章习题及参考答案供大家学习和复习使用

第7章 数据库管理与维护

习题与参考答案

一. 单项选择题

1. 下列不属于事务特征的是( A )。

A.完整性 B.一致性 C.隔离性 D.原子性

2. 事务一旦提交,其对数据库中数据的修改就是永久的,以后的操作或故障不会对事务的

操作结果产生任何影响。这个特性是事务的( D )。 A.原子性 B.一致性 C. 隔离性 D.持久性 3. 下列关于SQL Server备份设备的说法,正确的是( B )。

A.备份设备可以是磁盘上的一个文件

B.备份设备是一个逻辑设备,它只能建立在磁盘上 C.备份设备是一台物理存在的有特定要求的设备 D.一个备份设备只能用于一个数据库的一次备份 4. 在简单恢复模式下,可以进行的备份是( C )。

A.仅完整备份 B.仅事务日志备份

C.仅完整备份和差异备份

D.完整备份、差异备份和日志备份

5. 下列关于差异备份的说法,正确的是( B )。

A.差异备份备份的是从上次备份到当前时间数据库变化的内容 B.差异备份备份的是从上次完整备份到当前时间数据库变化的内容 C.差异备份仅备份数据,不备份日志

D.两次完整备份之间进行的各差异备份的备份时间都是一样的 6. 下列关于日志备份的说法,错误的是( D )。

A.日志备份仅备份日志,不备份数据

B.日志备份的执行效率通常比差异备份和完整备份高 C.日志备份的时间间隔通常比差异备份短

D.第一次对数据库进行的备份可以是日志备份

7. 设有如下备份操作:

日志 完整备份1 备份1 日志 备份2 差异 备份1 日志 备份3 日志 备份4 t 周日 0:00 周一 10:0周一 15:0周一 0:00 周二 10:0周二 15:0周二 17:00故障 现从备份中对数据库进行恢复,正确的恢复顺序为( B )。

A.完整备份1,日志备份1,日志备份2,差异备份1,日志备份3,日志备份4 B.完整备份1,差异备份1,日志备份3,日志备份4 C.完整备份1,差异备份1 D.完全备份1,日志备份4

8. 下列关于SQL Server数据库服务器登录账户的说法,错误的是( B )。

A.登录账户的来源可以是Windows用户,也可以是非Windows用户 B.所有的Windows用户都自动是SQL Server的合法账户

C.在Windows身份验证模式下,不允许非Windows身份的用户登录到SQL Server服务器

D.sa是SQL Server提供的一个具有系统管理员权限的默认登录账户 9. 下列关于SQL Server 2008身份认证模式的说法,正确的是( C )。

A.只能在安装过程中设置身份认证模式,安装完成之后不能再修改 B.只能在安装完成后设置身份认证模式,安装过程中不能设置

C.在安装过程中可以设置身份认证模式,安装完成之后还可以再对其进行修改 D.身份认证模式是系统规定好的,在安装过程中及安装完成后都不能进行修改

二. 判断题

1. 事务可以保证在一个事务中的全部操作或者全部成功,或者全部失败。( √ ) 2. ROLLBACK表示事物正常结束,COMMIT表示事务中的全部操作被撤销。( ╳ ) 3. 事务的持久性是指数据库中一个事务的执行不能被其他事务干扰。( ╳ ) 4. 对象权限是用户在已经创建好的对象上行使的权限,例如CRAETE TABLE。( ╳ ) 5. 在恢复数据库之前,如果数据库的日志文件没有损坏,可在恢复之前对数据库进行一次

尾部日志备份,这样可将数据的损失减少到最小。( √ )

三. 填空题

1. 事务具有四个特征,即( 原子性 )、( 一致性 )、( 隔离性)和( 持久性 )。 2. 用户要访问SQL Server数据库中的数据,需要三个认证过程。分别是( 身份认证 ),( 访问权认证 )和( 操作权限认证 )。

3. SQL Server的登录账户有两种类型,分别是( Windows授权用户 )和( SQL授权用

户 )。

4. SQL Server 2008将权限分为( 对象权限 )、( 语句权限 )和( 隐含权限 )

三种。

5. SQL Server 2008支持三种恢复模式,即( 简单 )、( 完整 )和( 大容量日志 )。

四. 简答题

1. 试说明事务的概念及四个特征。

答:事务是用户定义的数据操作系列,这些操作作为一个完整的工作单元执行。一个事务内的所有语句作为一个整体,要么全部执行,要么全部不执行。

事务的特征包括:原子性、一致性、隔离性和持久性。

2. SQL Server 2008的安全验证过程是什么?

答:在SQL Server 2008中,用户要访问数据库中的数据,必须经过三个认证过程。第一个是身份认证,这通过登录账户(SQL Server称之为登录名)来标识用户,身份认证只验证用户连接到SQL Server数据库服务器的资格,即验证该用户是否具有连接到数据库服务器的“连接权”;第二个是访问权认证,当用户访问某数据库时,必须具有该数据库的访问权,即验证用户是否是该数据库的合法用户。第三个是操作权限认证,当用户访问数据库中的数据或对象时,必须具有合适的操作权限。

3. 权限的管理包含哪些操作?

答:权限的管理包括授予权限、收回权限和拒绝访问三种。

4. 日志备份对数据库恢复模式有什么要求?

答:日志备份要求数据库恢复模式不能是简单的。

5. 差异备份备份的是哪段时间的哪些内容?

答:差异备份备份的是从上次完整备份到当前时刻数据库的变化部分。

6. 日志备份备份的是哪段时间的哪些内容?

答:日志备份备份的是从上次备份到当前时刻新增的数据库日志内容。

7. 恢复数据库时,对恢复的顺序有什么要求?

答:要求先恢复完整备份,然后恢复完整备份之后最近的差异备份,最后再按备份顺序逐个恢复差异备份后的全部日志备份。

提供第8章习题及参考答案供大家学习和复习使用

第8章 数据库设计 习题与参考答案

一. 单项选择题

1. 在数据库设计中,将E-R图转换为关系数据模型是下述哪个阶段完成的工作( C )。 A.需求分析阶段 B.概念设计阶段 C.逻辑设计阶段 D.物理设计阶段 2.在将E-R图转换为关系模型时,一般都将m:n联系转换成一个独立的关系模式。下列关于这种联系产生的关系模式的主码的说法,正确的是( C )。 A.只需包含m端关系模式的主码即可 B.只需包含n端关系模式的主码即可 C.至少包含m端和n端关系模式的主码 D.必须添加新的属性作为主码 3. 在将局部E-R图合并为全局E-R图时,可能会产生一些冲突。下列冲突中不属于合并E-R图冲突的是( B )。 A.结构冲突 B.语法冲突 C.属性冲突 D.命名冲突 4. 一个银行营业所可以有多个客户,一个客户也可以在多个营业所进行存取款业务,则客户和银行营业所之间的联系是( D )。 A.一对一 B.一对多 C.多对一 D.多对多 5.设实体A与实体B之间是一对多联系。下列进行的逻辑结构设计方法中,最合理的是( A )。

A.实体A和实体B分别对应一个关系模式,且外码放在实体B的关系模式中 B. 实体A和实体B分别对应一个关系模式,且外码放在实体A的关系模式中 C.为实体A和实体B设计一个关系模式,该关系模式包含两个实体的全部属性

D.分别为实体A、实体B和它们之间的联系设计一个关系模式,外码在联系对应的关系模式中 6. 设有描述图书出版情况的关系模式:出版(书号,出版日期,印刷数量),设一本书可以被出版多次,每次出版都有一个印刷数量。该关系模式的主码是( B )。 A.书号 B.(书号,出版日期) C.(书号,印刷数量) D.(书号,出版日期,印刷数量) 7. 在数据库设计中,进行用户子模式设计是下述哪个阶段要完成的工作( C )。 A.需求分析阶段 B.概念结构设计阶段 C.逻辑结构设计阶段 D.物理结构设计阶段

二. 填空题

1. 数据库设计分为五个阶段,包括( 需求分析 )、概念设计、( 逻辑设计 )、( 物

理设计 )、数据库实施和运行维护。

2. 需求分析阶段的主要目的是回答( “干什么” )问题。 3. ( 系统需求说明书 )是需求分析阶段的重要成果,它的主要内容就是画出( 数

据流图 ),建立数据字典和编写加工说明。

4. 将局部E-R图集成为全局E-R图时,可能存在三类冲突,分别是( 属性冲突 )、

( 命名冲突 )和( 结构冲突 )。

5. 物理结构设计中一个重要的考虑就是确定数据记录的存储方式。常用的存储方式

有:( 顺序存储 )、( 散列存储 )和( 聚簇存储 )。

三. 简答题

1. 数据库设计分为哪几个阶段?每个阶段的主要工作是什么。 答:数据库设计一般包含如下过程:

1)需求分析。了解用户系统需求,解决“干什么”的问题。

2)结构设计,包括概念设计、逻辑设计和物理设计。概念设计的目标是产生反映全体用

户信息需求的整体数据库概念结构;数据库逻辑设计的任务是把概念设计阶段产生的E-R图转换为具体DBMS支持的组织层数据模型,也就是转换为DBMS可以处理的数据库逻辑结构;物理设计的任务和目标是为逻辑数据模型选取一个最适合应用环境的物理结构。

3)数据库实施,主要任务和目标就是在实际的计算机系统中建立数据库应用系统。。 4)数据库运行和维护阶段。主要工作包括:数据库的备份和恢复、数据库的安全性和完

整性控制、监视、分析、调整数据库性能、数据库的重组。

2. 需求分析阶段的任务是什么?其中发现事实的方法有哪些?

答:需求分析阶段的主要工作就是,通过调查从用户处获得对数据库的下列需求。

1)信息需求:用户将从数据库中获得的信息的内容和性质,对信息的要求、导出数据的要求,即确定在数据库中存储哪些数据。

2)处理需求:用户要完成什么处理功能,对某种处理的执行频度、用户要求的响应时间,处理的方式是联机处理还是批处理等。 3)安全性和完整性的约束。

3. 什么是数据流程图,数据字典的主要作用是什么?

答:数据流图,是在业务流程分析基础上,描述实际数据流动和加工过程的图形表示法,它一般有4种符号,即外部实体、数据流、处理和存储。外部实体数据的来源和去向;数据流用带箭头的连线表示,反映数据的流动方向;处理用椭圆、圆或方框代表,表示对数据的加工处理动作;存储表示数据的存档情况。

数据字典是对数据流程图中数据流和存储结构的描述。

4. 什么是ER图,它的作用是什么?

答:ER图即“实体一联系”图,用于描述现实世界的概念层数据模型。

5. 什么是数据库的逻辑结构设计?简述其设计步骤。 答:数据库逻辑设计的任务是把概念设计阶段产生的E-R图转换为具体DBMS支持的组织层数据模型,这些模式在功能、性能、完整性和一致性约束方面满足应用要求。

关系数据库的逻辑设计一般包含三项工作: 1)将概念结构转换为关系数据模型。 2)对关系数据模型进行优化。 3)设计面向用户的外模式。

6. 把E-R模型转换为关系模式的转换规则有哪些? 答:

1)一个实体转换为一个关系模式。实体的属性就是关系模式的属性,实体的码就是关系模式的主键。

2)对于实体间的联系有以下不同的情况:

① 一个1∶1联系通常是与任意一端所对应的关系模式合并,并将在该关系模式的属性中加入另一个实体的码和联系本身的属性。

② 一个1∶n联系通常是与n端所对应的关系模式合并,并将在该关系模式中加入1端实体的码以及联系本身的属性。

③ 一个m∶n联系必须转换为一个独立的关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为此关系模式的属性,且关系模式的主键包含各实体的码。 ④ 三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为此关系模式的属性,而此关系模式的主键包含各实体的码。

⑤ 具有相同主键的关系模式可以合并。

7.数据模型的优化包含哪些方法?

答:关系数据模型的优化通常以关系规范化理论为指导,并考虑系统的性能。具体方法为:

1)确定各属性间的函数依赖关系。根据需求分析阶段得出的语义,分别写出每个关系模式的各属性之间的函数依赖以及不同关系模式中各属性之间的数据依赖关系。

2)对各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。 3)判断每个关系模式的范式,根据实际需要确定最合适的范式。

4)根据需求分析阶段得到的处理要求,分析这些模式对于这样的应用环境是否合适,确定是否要对某些模式进行分解或合并。

提供第9章习题及参考答案供大家学习和复习使用

第9章 数据库应用系统开发

习题与参考答案

一、单项选择题

1.设ADOcn是一个Connection对象,与数据库的连接字符串存放在cnStr字符串中。下列关于使用ADOcn建立与数据源连接的语句正确的是( B )。

A. ADOcn.Cretae cnStr B. ADOcn.Open cnStr C. ADOcn.connetion cnStr D. ADOcn.conn cnStr

2. 可以利用Connection对象的Execute方法实现对数据库的更改操作。下列删除SC表中学号为S01的选课记录的语句,正确的是( C )。

A. ADOcn.Execute \学号 = 'A30'\B. ADOcn.Execute \学号 = 'A30'\C. ADOcn.Execute \学号 = 'A30'\D. ADOcn.Execute \学号 = 'A30' \

3. 下列不属于ADO对象模型的对象的是( B )。 A. B. C. D.

Connection Update Command Recordset

4. 下列声明并创建Connection对象的语句,正确的是( A )。

A. Dim ADOcn As New Connection B. Dim ADOcn As Connection

C. Declare ADOcn As New Connection D. Declare ADOcn As Connection

5. 利用Recordset对象可以得到查询结果集。下列将SC表中的全部数据放置到Recordset对象中的语句,正确的是( A )。 A. ADOrs.Open \B. ADOrs. Execute \C. ADOrs. Create \D. ADOrs. \

二、简答题

1.请简述C/S和B/S的主要原理,并说明它们各自的优缺点。 答:

传统的C/S 模式是一种两层结构的系统,第一层是在客户机系统上结合了表示与业务逻辑;第二层是通过网络结合了数据库服务器。C/S模式主要由客户应用程序和数据库两部分组成。C/S结构软件(即客户机/服务器模式)分为客户机和服务器两层。

B/S模式,即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式,其本质是三层结构C/S模式。

C/S和B/S的优缺点。 (1)系统的性能

在系统的性能方面,B/S占有优势的是其异地浏览和信息采集的灵活性。

采用C/S结构时,客户端和 服务器端都能够处理任务,这虽然对客户机的要求较高,但因此可以减轻服务器的压力。

(2)系统的开发

C/S结构是建立在中间件产品基础之上的,对应用开发者提出了较高的要求。应用程序的维护、移植和互操作变得复杂。如果客户端是在不同的操作系统上,C/S结构的软件需要开发不同版本的客户端软件。

与B/S结构相比,C/S技术发展历史更为“悠久”。从技术成熟度及软件设计、开发人员的掌握水平来看,C/S技术应是更成熟、更可靠的。

(3)系统的升级维护

C/S系统升级成本比较大。B/S与C/S处理模式相比,减轻了异地用户系统维护与升级的成本。所有的升级操作只需要针对服务器进行。

2.请简要说明开发数据库应用系统的一般步骤。 答:

1).通常要声明一个全局数据库连接对象

2).一般要创建Main子过程,并将它设置为启动对象。在其中顺序完成以下操作: (1)以非模态方式显示飞溅窗。

(2)创建全局数据库连接对象,并连接SQL Server或Access等数据库。 (3)以模态方式显示登录窗,等待用户登录。

(4)登录成功后,以非模态方式显示主窗体,否则退出程序。

3).主窗体一般均提供增加、删除、修改、查询等对数据库的管理功能,所有操作均使用全局数据库连接对象作为与数据库交互的通道,通过SQL语句对数据进行处理,其中:

(1)增加功能。使用Insert 语句。在新增一条记录时,一般应先执行一Select语句,以防止记录的主关键词重复。

(2)删除功能。使用Delete语句。在执行删除操作之前,一般会使用MsgBox函数进行提示。

(3)修改功能。使用Update语句。

(4)查询功能。使用Select语句。一般会根据用户的需求设置查询条件。 4).其他功能。比如数据库备份和恢复功能、用户权限管理功能等。

提供一套模拟试题供大家复习使用

数据库应用技术-模拟试题

一、单项选择题

1. 下列属于数据库系统组成部分的是( B )。

A、数据库、数据库管理系统、操作系统和数据库文件 B、数据库、数据库管理系统、用户和应用程序 C、数据库、数据库管理系统和数据库文件 D、数据库、数据库管理系统和操作系统

2. 下列关于关系运算中选择运算的说法,正确的是( B )。 A、选择运算是从垂直方向选取表中的若干列

B、选择运算是从水平方向选取表中满足条件的记录

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

Top