2015年电大(本科)数据库应用技术复习题

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

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

2015年电大(本科)数

据库应用技术复习题

一、选择题

1.三级模式间存在两种映射,它们是(模

式与子模式间,模式与内模式间)。

2.SQL Server系统中的所有系统级信息存

储于哪个数据库( master )。

3.下面关于tempdb数据库描述不正确的

是(是用户建立新数据库的模板)。

4.在数据库技术中,面向对象数据模型是

一种(结构模型)。

5.数据库管理系统常见的数据模型有(层

次、关系和网状)。

6.用户看到的数据表,属于数据库系统三

级模式中的( 模式 )

7.对数据的插入属于数据库管理系统(数

据操纵)的功能。

8.保持数据的完整性属于数据库管理系统

( C )的功能。C.数据库的运行管理

9.在SQL Server数据库中,默认情况下

Sys通常是( C )。C.系统表表名的前缀

10.设一个关系为R,如果它的每个属性都

是不可再分的,则称这个关系是符合

( A )。A.第一范式

11.在第一个关系中出现,在第二个关系

中不出现的记录组成的关系称为两个关系

的( C )。C.差

12.关系数据库规范化是为了解决关系数

据库中的( A )问题。A.插入、删除和

数据冗余 B.提高查询的速度

13.关系模式中,满足2NF的模式,( B )。

B.必定是1NF 14.下述关于索引的描述,正确的是(B).建立索引后,会影响基本表的插入速度 15.下述关于视图的描述,正确的是C.在SQL Server中,可以像基本表一样对视图进行查询操作

16.如果希望从学生表中查询出所有姓“张”的同学,那么条件语句应该是( Where 姓名 LIKE ‘张%’ )。 17.下列SQL语句中,能够完成求某列最大值的是( B )。B.SELECT MAX(Age) FROM Student 18.假定学生关系S(SNO,SNAME,SEX,AGE),课程关系C(CNO,CNAME,TEACHER),学生选课关系SC(SNO,CNO,GRADE)。要查询选修了“计算机技术”课程的“女”学生姓名,将涉及到关系( D )。D.S,C,SC 19.如果希望从学生表中查询出所有姓“李”的同学,那么条件语句应该是(B)。B、Where 姓名 LIKE ‘李%’

20.在一个教师关系中,能够成为主关键字(或称主码)的属性是(B)。 B、教师编号

21.从最终用户应用程序的视角看,数据库系统的三级模式结构是(C)。C、外模式、模式和内模式 22.在一个学生关系中,能够成为主关键字(或称主码)的属性是(C)。C、学号 23.有严格的数学基础的数据模型是(A)。A、关系模型 24.下列关于索引的说明不正确的是(A)。A、索引必须创建在主关键字之上 25.设关系R是满足第一范式的,若R中不存在非主属性对主键的部分函数依赖,则R符合(A)。A、第二范式 26.下列符合第三范式的关系是(D)。D、学生(学号,姓名,性别) 27.在第一个关系中出现,而在第二个关系中不出现的记录组成的新关系称为(D)。D、两个关系的差 28.数据库应用程序开发中,需求分析阶段的主要目的是(A)。A、回答“干什么”的问题 29.用户使用SQL Server时,通常需要依次经过两个安全性阶段(C)。C、身份验证、权限认证 30.SQL Server数据库中的一个完整的备份通常要包括(A)。A、系统数据库、用户数据库和事务日志 31.下列哪些不属于索引的类型(D)。D、事务日志索引 32.下列SQL语句中,能够完成并运算的是(A)。A、SELECT * FROM 篮球爱好者UNION SELECT * FROM 足球爱好者 33.设学生表和课程表的结构分别为(学号,姓名)和(学号,课程号,成绩),如果希望查询出“成绩大于90分的学生姓名”,则对应的SQL语句是(D)。D、SELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90 34.如果希望从学生表中查询出所有姓“王”的同学,那么条件语句应该是( B )。B、Where 姓名 LIKE ‘王%’

35.通常情况下,“数据库管理系统”的英文缩写是( DBMS )。

36.从最终用户应用程序的视角看,数据库系统的三级模式结构是( C )。C、外模式、模式和内模式

37.在一个学生关系中,能够成为主关键字(或称主码)的属性是(学号)。 38.有严格的数学基础的数据模型是( A )。A、关系模型

39.下列关于索引的说明不正确的是( A )。A、索引必须创建在主关键字之上 40.设关系R是满足第一范式的,若R中不

1 / 6

存在非主属性对主键的部分函数依赖,则R符合( A )。A、第二范式

41.下列符合第三范式的关系是( D)。D、学生(学号,姓名,性别)

42.在第一个关系中出现,而在第二个关系中不出现的记录组成的新关系称为(D)。D、两个关系的差

43.数据库应用程序开发中,需求分析阶段的主要目的是( A )。A、回答“干什么”的问题

44.用户使用SQL Server时,通常需要依次经过两个安全性阶段( C )。C、身份验证、权限认证

45.SQL Server数据库中的一个完整的备份通常要包括( A )。A、系统数据库、用户数据库和事务日志

46.SQL Server中进行数据库恢复的SQL语句是( C )。C、RESTORE DATABASE 47.下列SQL语句中,能够完成并运算的是( A )。A、SELECT * FROM 篮球爱好者 UNION SELECT * FROM 足球爱好者 48.设学生表和课程表的结构分别为(学号,姓名)和(学号,课程号,成绩),如果希望查询出“成绩大于90分的学生姓名”,则对应的SQL语句是( D )。D、SELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90 49.关系数据库系统采用关系模型作为数据的组织方式。关系模型通常由三部分组成()。A.数据结构、关系操作集合和关系的完整性 50.以下不属于SQL Server数据库特点的是()。C.基于面向对象的数据模型 51.SQL Server数据库一般包括两大类数据库类型()。D.系统数据库和用户数据库 52.在一个物资台账数据表中,能够成为主关键字(或称主码)的字段是()。 B.物资编码

53.在物理层面,SQL Server数据库是由数据文件和事务日志文件两个操作系统文件组成的,它们的后缀分别是()。 A.MDF和LDF

54.SQL Server数据库中的系统表的表名通常以()为前缀。B.Sys

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

56.下列符合第三范式的关系是()。 B.教师(编号,姓名,职称)

57.一个关系中每条记录和第二个关系的每条记录进行连接,所组成的新关系称为()。C.两个关系的积

10.SQL Server提供的Nchar、Nvarchar、Ntext等几种双字节数据类型实际上是一种()。A.Unicode数据类型

58.一个用户访问SQL Server通常要依次经过4个层次的安全控制,分别是()。 A.操作系统、服务器、数据库、表和列 59.下列哪些不属于索引的类型()。 D.事务日志索引

60.SQL Server中进行数据库备份的SQL语句是()。B.BACKUP DATABASE 61.在成绩数据表中,要计算某课程的平均成绩,可采用()。D.Avg函数 62.设课程成绩表的结构为(学号,课程号,成绩),如果希望查询出“成绩大于90分且课程号首字母为A的所有记录”,则对应的SQL语句是()。C.SELECT * FROM 课程成绩表 WHERE 成绩>90 AND 课程号 LIKE ‘A%’

63. SQL Server数据库是基于(关系模型)数据模型的。 64. 通常情况下 ,“数据库管理员”的英文缩写是(DBA)。

65. 如果希望从成绩表中查询出所有成绩大于等于90分的记录,那么条件语句应该是(Where成绩>=90)

66.在一个课程关系中,最可能成为主关键字(或称主码)的属性是(课程编号)。 67.SQL Server的系统主数据库是(master ) 68. SQL Server数据库中的 NULL值(空值) (表示没有值、不确定的值) 69.设一个关系为 R,如果它的每个属性都是不可再分的,则称这个关系是符合(第一范式)

70. 下列符合第三范式的关系是(职工(职工号,职工姓名,性别 ,籍贯,所属部门编号))。

71. 将第一个关系的记录加到第二个关系中,生成的新关系称为(两个关系的并)。 72. 数据库应用程序开发中,概念设计阶段的主要目的是(建立概念模型 )。 73. 用户使用 SQL Server时,通常需要考虑两个安全性阶段(身份验证、权限认证) 74. 创建数据库的SQL语句是(CREATE DATABASE)。

75. SQL Server数据库中的一个完整的备份通常要包括(系统数据库、用户数据库和事务日志)。

76. 下列SQL语句中,能够完成笛卡尔积运算的是(SELECT * FROM 篮球爱好者 ,

足球爱好者)。

77. 设学生表和选课表的结构分别为(学号,姓名)和(学号,课程号,成绩),如果希望查询出“所有姓‘王 ’的学生且选修了‘A001’课程的学生”,则对应的 SQL语句是(SELECT 姓名 FROM 学生表,选课表 WHERE 学生表.学号=选课表.学号 AND学生表.姓名 LIKE ‘王%' AND选课表.课程号='A OOI' )。

1.SQL数据定义语言的主要作用是创建存储数据的结构,而数据操纵语言的主要作用则是向数据库中填写数据,具体包括( 增加 )、( 删除 )、( 修改 )等操作。 2.当需要对查询结果进行排序时,可以指定其排序方式,字段后使用( ASC )表示升序,( DESC )表示降序。

3.视图是一个虚表,它是从( 一个或多个基本表 )中导出的表。

1.下列( D )是指数据库管理系统。D、DBMS

2.有严格的数学基础并在此基础上发展起来的数据库模型是( C )。C、关系模型 3.在销售商品关系中,能够成为主关键字(或称主码)的属性是( B )。B、商品编号

5.关系数据库规范化理论是为解决关系数据库中(插入、删除和数据冗余)问题而引入的。

6.下列符合第三范式的关系是( B )。B、零件(零件编号,零件名称,零件重量,零件储存的仓库编号)

8.下列符合第三范式的关系是( D )。D、学生(学号,姓名,性别)

7.如果希望从学生表中查询出最大年龄的同学,那么语句中应该包含(B)B、SELECT MAX (年龄) AS 最大 FROM 学

8.下列关于索引说明不正确的是(BA)。B、索引一经建立就需要人工进行维护; A、索引必须创建在主关键字之上

9.在第一个关系中出现,在第二个关系中不出现的记录组成的新关系称为(两个关系的差)。

10. SQL Server默认的登录账号为(sa )。 11.数据库应用程序开发中,( B )属于物理设计。B、存储方法设计

12.下列SQL语句中,能够完成删除功能的是( D )。D、DELETE FROM 教师表 WHERE 性别=‘男’

2 / 6

13.查询姓名中带有“芳”字的学生,则条件语句应包含( B )。B、Where 姓名 LIKE ‘%芳%’

14.下列SQL语句中,限制字段取值范围的约束是( C )。C、性别 char (2) NOT NULL check (性别=‘男’or 性别=‘女’) 15.设学生表和成绩表的结构分别为(学号,姓名,所在系)和(学号,课程名,成绩),如果希望按分数降序查询出“英语系中选修了计算机课程的学生姓名和成绩”,则对应的SQL语句是( D )。

D、SELECT 姓名,成绩 FROM 学生表,成绩表 WHERE 所在系=‘英语系’ AND课程名=‘计算机’ AND 学生表.学号=课程表.学号 ORDER BY 成绩 DESC

16.如果希望从学生表中查询出所有姓“王”的同学,那么条件语句应该是( B )。B、Where 姓名 LIKE ‘王%’

17.通常情况下,“数据库管理系统”的英文缩写是( A )。A、DBMS

18.从最终用户应用程序的视角看,数据库系统的三级模式结构是( C )。C、外模式、模式和内模式

19.在一个学生关系中,能够成为主关键字(或称主码)的属性是(学号)。

20.有严格的数学基础的数据模型是( A )。A、关系模型

21.设关系R是满足第一范式的,若R中不存在非主属性对主键的部分函数依赖,则R符合( A )。A、第二范式

22.在第一个关系中出现,而在第二个关系中不出现的记录组成的新关系称为(两个关系的差)。

23.数据库应用程序开发中,需求分析阶段的主要目的是(回答“干什么”的问题)。 24.用户使用SQL Server时,通常需要依次经过两个安全性阶段(身份验证、权限认证)。 25.SQL Server数据库中的一个完整的备份通常要包括(系统数据库、用户数据库和事务日志)。

26.SQL Server中进行数据库恢复的SQL语句是( C )。C、RESTORE DATABASE 27.下列SQL语句中,能够完成并运算的是( A )。A、SELECT * FROM 篮球爱好者 UNION SELECT * FROM 足球

28.设学生表和课程表的结构分别为(学号,姓名)和(学号,课程号,成绩),如果希望

查询出“成绩大于90分的学生姓名”,则对应的SQL语句是( D )。

D、SELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩>90

29.如果希望从学生表中查询出所有姓

“张”的同学,那么条件语句应该是

( B )。B、Where 姓名 LIKE ‘张%’

30.本教材介绍的数据库管理系统基于( Microsoft SQL Server )数据库。

31.( A )数据库包含了所有系统级信

息,对SQL Server系统来说至关重要,一

旦受到损坏,有可能导致SQL Server系统

的彻底瘫痪。A、master数据库 32.在一个教师关系中,能够成为主关键

字(或称主码)的属性是( B )。B、

教师编号

33.从逻辑层次上看,数据库不包括(内

模式)。 34.下列关于索引的说明不正确的是(索

引一经建立就需要人工进行维护)。

35.第二范式是指( B )。

B、设一个关系为R,它是满足第一范式的,

若R中不存在非主属性对主键的部分函数依赖,则称该关系符合第二范式。

36.下列符合第三范式的关系是(教师(教

师编号,教师姓名,教师性别))。

37.在第一个关系中出现,在第二个关系

中也出现的记录组成的新关系称为(两个关系的交)。

38.数据库应用程序开发中,(存储方法设

计)属于物理设计。

39.通过账号管理,SQL Server用户分为

(登录账号和用户账号)。 40.下列SQL语句中,能够完成删除功能

的是(DELETE FROM 学生表 WHERE 性别=’

男’)。

41.下列SQL语句中,能够完成求某列最

大值的是( SELECT MAX(Age) FROM Student)。

42.下列SQL语句中,能够完成交运算的

是(SELECT * FROM刘德华出演的电影

INTERSECT SELECT * FROM梅艳芳出演的

电影)。 43.设学生表和课程表的结构分别为(学号,姓名)和(学号,课程名,成绩),如果希望查询出“选修了‘数据库应用技术’

课程的学生姓名和成绩”,则对应的SQL语句是(SELECT 姓名,成绩FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 AND 课程名=‘数据库应用技术’)。

二、填空题

1.计算机数据处理技术大致经历了 人工管

理 、文件管理 、 数据库管理 等不同的发

展阶段。 2.数据库系统由 外模式 、 模式 和 内模式 三级抽象模式构成。

3. 数据库管理系统的主要功能包括 数据

定义 、 数据操纵 、 数据库的运行管理 、

数据库的建立和维护 。

4.关系模型由三部分组成 数据结构 、 关系操作集合 和 关系的完整性。 5.SQL Server提供了大量易用的管理工具,

比较常用的主要有( 服务管理器 )、 企

业管理器 和 查询分析器 。

6.数据文件的后缀是 mdf 。

7.事务日志文件的后缀是 ldf 。 8.SQL Server数据库分为 系统数据库 和 用户数据库 )两种类型。

1.数据库设计一般包括 需求分析 、 概念

设计 、 逻辑设计 、 物理设计 、 数据库

实施 和

运行维护 等阶段。 2.数据库应用系统的建设包括 结构设计 和 行为设计 两个方面。

3.数据库设计的主要原则包括 表设计原

则 、 字段设计原则 和其他原则。

4.E-R图的设计关键在于对 实体 、 联系

的选择和表示。 5.物理设计的主要内容包括 存储记录的格式设计 、 存储方法设计 、 访问方法设计

以及 完整性和安全性考虑 。

1.数据库系统的三级模式结构是指数据库

系统由外模式、 模式 和 内模式 三级抽象

模式构成。 2.备份是指将数据从硬盘复制到 可移动媒体 上的过程。

3.“实体一联系”方法是描述数据库概念

模型的主要方法,一般称这种方法为 E-R

方法 (或E-R图方法)。

4.用户使用SQL Server数据库时,一般需要经过两个安全性阶段: 身份验证 和权限认证。

5.E-R图设计一般在数据库设计的 概念设

计 阶段使用。

1.关系模型由三个部分组成,分别是 数据结构 、关系操作集合和 关系的完整性 。

2.备份是指将数据从硬盘复制到 可移动

3 / 6

媒体上的过程。

3.数据库应用系统的建设包括结构设计和 行为设计 两个方面。

4.关系完整性是指关系模型中数据的正确性、 一致性 和 有效性 。

5.SQL Server 中的事务处理控制语句, ROLLBACK [TRAN [SACTION] ] 实现回滚一个事务。

6.数据库系统的三级模式结构是指数据库系统由外模式、 模式 和 内模式 三级抽象模式构成。

7.进行数据库备份时,必须同时复制主数据文件和事务日志文件。

8.“实体一联系”方法是描述数据库概念模型的主要方法,一般称这种方法为E-R方法(或ER图方法)。

9.用户使用SQL Server数据库时,一般需要经过两个安全性阶段:身份验证和权限认证。

10. 表 是SQL语言存放数据、查找数据以及更新数据的基本 数据结构 。 11.数据依赖通常包括 函数依赖 和多值依赖两个方面。

12.当需要对查询结果进行排序时,可以指定其排序方式,字段后使用 ASC 表示升序, DESC 表示降序。

13.SQL数据定义语言的主要作用是创建存储数据的结构,而数据操纵语言的主要作用则是向数据库中填写数据,具体包括 增加、删除、修改 等操作。

1.SQL语言共分为四大类,即数据定义语言,数据查询语言,数据操纵语言和数据控制语言。

2.能够惟一标识某条记录的属性称为 主键 。

3.关系的规范化程度可分为多个级别,但通常只需要达到第 三 范式即可。

4.备份是指将数据从硬盘复制到 可移动 媒体上的过程。

1. 计算机数据处理技术大致经历了人工管

理、文件管理和数据库管理等三个阶段。 2. 如果一个数据表不满足第三范式,那么至少会存在数据冗余、更新异常、插人异常和删除异常等问题。

3. SQL Server支持 3种备份设备,即磁盘设备、磁带设备和命名管道设备 。

4. VB提供了三种数据库访问引擎,即Jet引擎、ODBC和 OLEDB,目前主要使用OLEDB

三、判断题

1.能够惟一表示数据表中的每条记录的字段或者字段的组合称为主码或主键(√)。 2.SQL Server数据库中的NULL值(空值)表示的是 “空格”或“0”值(×) 3.一个不规范的关系模式通常会引发插入异常、删除异常和更新异常,导致大量的数据冗余。(√) 4.根据索引的特点,应该对那些数据量大、查询频度较高、实时性要求强的基本表创建索引,(√)

5.数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。(√)

6.参照完整性规则通常是指在两个参照和被参照关系中,参照关系中每条记录的外键或者为空,或者等于被参照关系中某条记录的主键。(√)

1.数据流图是需求分析的常用工具之一,人们也经常称它为DFD图(√ )。 2.数据库中只有一个模式,也只有一个内模式,所以模式/内模式映像是惟一的。(√ )。

3.SQL Server数据库中的NULL值(空值)表示的是 “空格”或“0”值(× ) 4.SQL Server中的tempdb数据库是一个临时数据库,属用户数据库(× ) 5.SQL虽被称为“查询语言”,其功能却不仅仅限于查询(√ )

1.计算机数据处理技术大致经历了人工管理、文件管理和SQL Server数据库管理三大阶段(╳)。

2.能够惟一表示数据表中的每条记录的字段或者字段的组合称为主码或主键(√)。 3.SQL Server数据库中的NULL值(空值)表示的是 “空格”或“0”值(╳) 4.一个不规范的关系模式通常会引发插入异常、删除异常和更新异常,导致大量的数据冗余。(√)

5.目前的关系数据库系统一般都支持标准SQL语句(√)

1.DELETE TABLE的功能是删除表结构。(× )

2.在教师任课关系(教师编号,教师姓名,教师职称,课程号,课程名,课时费)中,主键是教师编号。(× )

3.触发器是一种特殊的存储过程,它基于一个表创建,可以针对多个表进行操作。

(√)

4.做结构设计时,要尽量使设计符合第三

范式的要求。(√ )

5.登录账号用于身份验证,用户账号用于

权限验证。(√ ) 11.目前,在数据库系统中,使用最广泛的

数据模型是面向对象模型(× )。

12.主键可以取空值( × )。

13.数据库设计是指对于一个给定的应用环

境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息

要求和处理要求。( √ )

14.根据索引的特点,应该对那些数据量大、

查询频度较高、实时性要求强的基本表创建

索引,(√) 15.在实际应用中,尽可能不要通过视图对

记录进行更新操作。(√ )

1. 数据库应用程序开发中,需求分析阶段

的主要目的是回答“干什么”的问题。(√) 2. SQL结构化查询语言是一种过程化语言。(X) 3. 索引是在基本表的列上建立的一种数据库对象,它和基本表分开存储,它的建立或撤消对数据的内容毫无影响 。(√) 4. 当删除一个视图时,与之相关联的基本

表也会自动被删除 。(X)

5. 参照完整性规则通常是指在两个参照和

被参照关系中,参照关系中每条记录的外键

或者为空,或者等于被参照关系中某条记录

的主键。 (√)

简述题 1.关系完整性的主要内容是什么?为什么

要保证关系的完整性?

关系完整性就是关系模型中数据的正确性、一致性和有效性。关系完整性又包括实体完整性、参照完整性和用户定义的完整性三个方面。只有保证了关系的完整性,才

能使数据库中的数据正确、一致和有效。

2.什么是嵌入式SQL,它有哪些用途?

嵌入式SQL语言是将SQL语句直接嵌入

到程序的源代码中,与其他程序设计语言语

句混合。

嵌入式SQL的用途:它是数据库应用程

序的一种开发方法。是一种应用程序进行数

据库访问时所采取的编程式数据库语言。 3.请简要说明视图的概念和作用 视图是在基本表或其他视图上建立的表,它的结构和内容都来自某个基本表,是

依据基本表存在而存在的。删除一个视图

时,不会对基本表产生任何影响,但当删除

一张基本表时,与之相关联的视图就会自动

4 / 6

被删除。

其作用主要是:(1)视图是经过预编译的SELECT语句,存储在数据库服务器端,因

此执行视图比从客户端直接执行SELECT语

句速度更快、效率更高一些。(2)视图属于

用户模式范畴,在实际中,一般的用户不一

定具有SELECT语句方面的专门知识,从用户友好性角度来说,视图更便于用户使用。(3)利用视图可以简化的形式表达复杂的SELECT

语句组,如嵌套查询等。

4.什么是函数依赖与函数决定,请举例说明

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

系,并称X函数决定Y,或称Y函数依赖于X,

称X为决定因素

假设一个职工关系为(职工号,姓名,性

别,年龄,职务),职工号用来标识每个职工,选作该关系的主键。我们可以从以下两方面理解函数依赖的概念:首先,对于该关系中每个职工的职工号,都对应着姓名属性中的惟一值,即该职工的姓名,或者说一个职工的姓名由其职工号惟一确定,所以称职工号函数决定姓名,或称姓名函数依赖于职工号。其次,除职工号外,其他属性都不能成为决定因素形成函数依赖,因为对于它们的每个属性值,都可能对应另一属性的多个不同的

取值,比如对于性别属性的一个取值“男”

就会对应多个而不是一个职工号 5. 请简要说明存储过程的概念和优点。

存储过程(StoredP rocedure)是一组预先编译好的,以一种可执行的形式永久地存储在

数据中的SQL代码。

使用存储过程的好处可归纳为以下几点:

(a)执行速度快。在经过第一次调用以后,就驻留在内存中,不必再经过编译和优化;

(b)模块化的程序设计。经过了一次创建以

后,可以被调用无数次; (c)减少网络流量;(d)保证系统的安全性。

6. 请简要说明关系规范化的必要性。 减少数据冗余、更新异常、插人异常、删除异常 7. 为什么要使用事务?事务处理的作用是什么? 事务(Transaction)是并发控制的基本

单位,它反映了现实世界中需要以一个完整

的单位提交的一项工作。SQL Server通过事

务机制,将逻辑相关的一组操作捆绑在一起,以便服务器保持数据的完整性。它是SQL复

杂程序设计必不可少的内容。

举例说,如果我们正在使用UPDATE语句同时将学生表、成绩表中的学号“20030001”改为“20040001”。这个任务需要两条UPDATE语句组成,即: UPDATE 学生表 SET 学号=‘20040001’

WHERE 学号=‘20030001’ 1.用SQL语句创建简单数据表 UPDATE 成绩表 SET 学号=‘20040001’

WHERE 学号=‘20030001’

如果在执行完第一个语句后,计算机

突然断电,而第二条语句还没来得急执行,数据出现了不一致怎么办?这时候就需要

用到SQL的事务控制功能了。

如果使用了SQL Server的事务控制机

制,以上两个问题均可获得解决。在使用事务的情况下,SQL Server可以保证,所

有的记录要么全部处理,要么一行也不处

理。如果修改了全部记录的一半时服务器

出错了,SQL Server会返回到以前未执行UPDATE操作前的位置,清除它已经修改过

的数据,这就是事务处理的作用。

8. 为什么要进行数据备份?数据库备份包括哪些主要内容?

任何系统都不可避免会出现各种形式的故障,而某些故障可能会导致数据库灾难性的损坏,所以做好数据库的备份工作极为重要。备份可以创建在磁盘、磁带等备份设备上,与备份对应的是还原。 数据库备份就是在某种介质上(磁带、磁盘等)存储数据库(或者其中一部分)的拷贝的过程。更严格意义上讲,备份应该是一种把数据从硬盘上复制到其他可移动介质上的操作过程。

一个完整的备份通常要包括三部分内容,即系统数据库、用户数据库和事务日志。

9. 请简要说明SQL Server数据库备份有

哪几种方式?

SQL Server提供了四种不同的方式:数据库完全备份、增量备份、事务日志备份,以及数据库文件和文件组备份。

10.请简要说明开发数据库应用系统时,结构设计和行为设计的含义。

从系统开发的角度,数据库应用系统的建设工作包括结构与行为两个方面:(a)结构设计,着重描述数据库的结构及各数据库对象间关系,要求在满足应用需求的前提下,尽可能地达到第三范式;(b)行为设计,主要目的是描述对数据库的操作动作,这些行为和动作将来要体现在应用程序中,所以行为的设计主要是应用程序的设计。根据系统的结构和行为两方面特性,系统设计开发分为两个部分,一部分是作为数据库应用系统核心和基石的数据库设计,另一部分是相应的数据库应用软件的设计开发,二者相辅相成,组成统一的数据库工程。

综合应用题

设有某数据库中有学生表(表名为

Students),包括学号SNo,姓名SName,出生年月日SD等字段。SNo和SName均为字符型(长度10),SD为日期型。

SNo是主键,请用SQL语句创建该数据图2“增加记录”窗体运行界面 表Students。 Private Sub Command1_Click() CREATE TABLE Students (

‘声明一个记录集对象

SNo CHAR(10) PRIMARY KEY, Dim ADOrs As New Recordset

SName CHAR(10), ‘将记录集对象与已建立的数据库联接对 SD DATETIME

象ADOcn绑定

); ADOrs.ActiveConnection=ADOcn

‘第一步:在课程表Courses中查询是否2.利用SQL语句进行查询

存在关键字相同的记录 在第五题第1小题的基础上,假设 (1)拼写查询字符串

还存在课程表(表名Courses)和成绩strSQL =“Select CNo From courses 表(表名Marks)两张数据表。课程表Where Cno=‘” + Text1 + “’” Courses包括课程号CNo,课程名CName (2)执行查询语句 两个字段;成绩表marks包括学号SNo, ADOrs.Open strSQL

课程号CNo和成绩mark三个字段。

‘第二步:如果记录已经存在,则退出程教学管理人员希望查询学号为序

“2009001”的学生情况,并按如图1If Not ADOrs.EOF Then

所示的方式显示查询结果,请写出对应 MsgBox “记录已存在,不能继续增的Select查询语句。

加”

Exit Sub End If

‘第三步:将结果插入到课程表Courses中

strSQL

=

Insert

Into

courses(Cno,CName) Values(‘”+Text1+

图1 要求的显示结果

“’

,‘”+Text2+“’)”

SELECT

ADOcn.Execute strSQL End Sub students.Sno,Sname,Cname,mark

FROM students,courses,marks 4.用SQL语句创建简单数据表

WHERE students.Sno=marks.Sno and 设有两个关系(1)教师关系T,包括教师编courses.Cno=marks.Cno and

号TNo,姓名TN,系别TD,职称RANK;(2)students.Sno=‘2009001’ 课程关系C,包括课程号CNo,课程名CN。

教师编号和课程号分别是上述两个关系的主3.程序应用题

键,请用SQL语句创建教师数据表T。 接第五题第2小题,某教学管理系统包参考答案 括课程信息录入功能,程序运行界面如图2CREATE TABLE T{ 所示,其中Text1为课程号、Text2为课程 TNo INT PRIMARY KEY, 名。进入界面后,用户输入所有数据,点击 TN CHAR(30), “确认”按钮,将结果插入到课程表 TD CHAR(20), courses中。请补充完成下列程序代码。

RANK CHAR(20)

};

5.用SQL语句创建数据表

在上题基础上,假设还存在教师教授课程关系TC,包括教师编号TNo和课程号CNo。

5 / 6

注意:说明主键码和外键码约束 参考答案

CREATE TABLE TC{ TNo INT, CNo INT,

PRIMARY KEY (Tno,Cno),

FOREIGN KEY (TNo) REFERENCES T(TNo), FOREIGN KEY (CNo) REFERENCES C(CNo) };

6.利用SQL语句进行查询

在上题的基础上,如果要查询“张红老师承担的所有课程”,请写出对应的SQL查询语句。 参考答案

SELECT C.CNo,C.CN FROM T,C,TC WHERE T.TNo=TC.TNo AND C.CN=TC.CNo AND T.TN=‘张红’

7.程序应用题

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

Private Sub Command1_Click() ‘声明一个记录集对象 Dim ADOrs As New Recordset

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

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

Command1 strSQL=“Select * From 学生成绩表 Where 学号=‘”+combo1.Text+“ ’ And 课程号=‘”+Combo2.Text+“ ’ ” (2)执行查询语句

ADOrs.Open StrSQL

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

MsgBox “记录已存在,不能继续增加”

Exit Sub

End If

‘第三步:将结果插入到学生成绩表中 StrSQL=“Insert Into 学生成绩表(学号,课程号,成绩) Values(‘”+Combo1.Text+“ ’,‘”+Combo2.Text+“ ’, ”+Str(Val(Text3.Text))+“)”

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

8. 用 SQL语句创建简单数据表

设有职工数据表T,包括职工编号TNo,姓名TN,出生年月日TD等字段。TNo和TN均为字符型(长度 10),TD为日期型。TNo是主键,请用 SQL语句创建该数据表T 参考答案

CREATE TABLE T(

Tno CHAR(10) PRIMARY KEY, TN CHAR (10), TD DATETIME ) ;

9. 用 SQ L语句创建带约束条件的数据表

在上题基础上,假设还存在工资数据表C,包括职工编号CNo , 基本工资Cn等字段。Cn为数值型(带小数)。Cno是该表主键,字符型(长度10)。该数据表与职工数据表T之间存在外键约束,即职工数据表T中不存在的记录不能够出现在该表中。请根据上述说明,用 SQL 创建工资数据表C 参考答案

CREATE TABLE C(

Cno CHAR(10) PRIMAR KEY, Cn money,

FOREIGN KEY (Cno) REFERENCES T(TNo));

10. 程序应用题

设物资台账数据表的结构为(物资编码、物资名称、计量单位、单价、期初库存),程序运行界面如图1所示,其中Text1为控件数组,Text1(0), Text1(1), Text1(2), Text1(3), Text1(4)分别表示物流编码、物资名称、单价、期初库存、期初金额。进入界面后 ,用户输人所有数据后,点击“保存”按钮后 ,将结果插人到物资台账数据表中。请补充完成下列程序代码。

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

Dim ADOrs As New Recordset

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

ADOrs. ActivcConnection= ADOcn

‘第一步:在数据表中查询是否存在关键字相同的记录

(1) 拼写查询字符串

strSQL=“Select 物资编码 From 物资台账 Where 物资编码=‘ ’+Textl(0)+‘ ’” (2) 执行查询语句: ADOrs. Open strSQL

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

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

‘ 第三步: 将结果插人到物资台账数据表中

strSQL=\物资台账(物资编码,物资名称,计量单位,单价,期初库存)” strSQL= strSQL+“Values( “+Text1(0)+”, “+ Text1( 1)+” ,“+Combol.Text+“,” strSQL=strSQL+ Text1(2)+ “,” + Text1( 3)+“)”

ADOcn.Exeute strSQL End Sub

11. 设职工工资表的结构为(职工编号、工资项编号、工资数),程序运行界面如图2所示。进入界面后,用户首先选择职工编号(Combo1)、工资项编号(Combo2),职工姓名(Text1)和工资项名称(Text2)从数据库中自动读入;然后,用户修改对应的工资数(Text3),点击“确认”按钮后,将结果更新到学生成绩表中。请补充完成下列程序代码。

图2“修改记录”窗体运行界面

Private Sub Command1_Click() ‘声明一个字符串变量

Dim strSQL AS String ‘第一步:拼写Update语句

strSQL =“Update 职工工资表 Set 工资数=Text3 Where 职工编号=Combo1.Text And 工资项编号=Combo2.Text+” ‘第二步:执行Update语句 ADOrs.Execute strSQL End Sub

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

6 / 6

注意:说明主键码和外键码约束 参考答案

CREATE TABLE TC{ TNo INT, CNo INT,

PRIMARY KEY (Tno,Cno),

FOREIGN KEY (TNo) REFERENCES T(TNo), FOREIGN KEY (CNo) REFERENCES C(CNo) };

6.利用SQL语句进行查询

在上题的基础上,如果要查询“张红老师承担的所有课程”,请写出对应的SQL查询语句。 参考答案

SELECT C.CNo,C.CN FROM T,C,TC WHERE T.TNo=TC.TNo AND C.CN=TC.CNo AND T.TN=‘张红’

7.程序应用题

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

Private Sub Command1_Click() ‘声明一个记录集对象 Dim ADOrs As New Recordset

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

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

Command1 strSQL=“Select * From 学生成绩表 Where 学号=‘”+combo1.Text+“ ’ And 课程号=‘”+Combo2.Text+“ ’ ” (2)执行查询语句

ADOrs.Open StrSQL

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

MsgBox “记录已存在,不能继续增加”

Exit Sub

End If

‘第三步:将结果插入到学生成绩表中 StrSQL=“Insert Into 学生成绩表(学号,课程号,成绩) Values(‘”+Combo1.Text+“ ’,‘”+Combo2.Text+“ ’, ”+Str(Val(Text3.Text))+“)”

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

8. 用 SQL语句创建简单数据表

设有职工数据表T,包括职工编号TNo,姓名TN,出生年月日TD等字段。TNo和TN均为字符型(长度 10),TD为日期型。TNo是主键,请用 SQL语句创建该数据表T 参考答案

CREATE TABLE T(

Tno CHAR(10) PRIMARY KEY, TN CHAR (10), TD DATETIME ) ;

9. 用 SQ L语句创建带约束条件的数据表

在上题基础上,假设还存在工资数据表C,包括职工编号CNo , 基本工资Cn等字段。Cn为数值型(带小数)。Cno是该表主键,字符型(长度10)。该数据表与职工数据表T之间存在外键约束,即职工数据表T中不存在的记录不能够出现在该表中。请根据上述说明,用 SQL 创建工资数据表C 参考答案

CREATE TABLE C(

Cno CHAR(10) PRIMAR KEY, Cn money,

FOREIGN KEY (Cno) REFERENCES T(TNo));

10. 程序应用题

设物资台账数据表的结构为(物资编码、物资名称、计量单位、单价、期初库存),程序运行界面如图1所示,其中Text1为控件数组,Text1(0), Text1(1), Text1(2), Text1(3), Text1(4)分别表示物流编码、物资名称、单价、期初库存、期初金额。进入界面后 ,用户输人所有数据后,点击“保存”按钮后 ,将结果插人到物资台账数据表中。请补充完成下列程序代码。

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

Dim ADOrs As New Recordset

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

ADOrs. ActivcConnection= ADOcn

‘第一步:在数据表中查询是否存在关键字相同的记录

(1) 拼写查询字符串

strSQL=“Select 物资编码 From 物资台账 Where 物资编码=‘ ’+Textl(0)+‘ ’” (2) 执行查询语句: ADOrs. Open strSQL

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

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

‘ 第三步: 将结果插人到物资台账数据表中

strSQL=\物资台账(物资编码,物资名称,计量单位,单价,期初库存)” strSQL= strSQL+“Values( “+Text1(0)+”, “+ Text1( 1)+” ,“+Combol.Text+“,” strSQL=strSQL+ Text1(2)+ “,” + Text1( 3)+“)”

ADOcn.Exeute strSQL End Sub

11. 设职工工资表的结构为(职工编号、工资项编号、工资数),程序运行界面如图2所示。进入界面后,用户首先选择职工编号(Combo1)、工资项编号(Combo2),职工姓名(Text1)和工资项名称(Text2)从数据库中自动读入;然后,用户修改对应的工资数(Text3),点击“确认”按钮后,将结果更新到学生成绩表中。请补充完成下列程序代码。

图2“修改记录”窗体运行界面

Private Sub Command1_Click() ‘声明一个字符串变量

Dim strSQL AS String ‘第一步:拼写Update语句

strSQL =“Update 职工工资表 Set 工资数=Text3 Where 职工编号=Combo1.Text And 工资项编号=Combo2.Text+” ‘第二步:执行Update语句 ADOrs.Execute strSQL End Sub

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

6 / 6

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

Top