1、2022年电大本科数据库应用技术试题附答案1关系数据库系统采用关系模型作为数据的组织方式。关系模型通常由三部分组成(A )。 A数据结构、关系操作集合和关系的完整性 B一级模式、二级模式、三级模式 C数据库、数据表、索引 D数据库、数据表、视图 2以下不属于SQL Server数据库特点的是( C)。 A采用SQL结构化查询语言 B具有客户/服务器体系结构 C基于面向对象的数据模型 D提供了大量易用的管理工具 3SQL Server数据库一般包括两大类数据库类型(D )。 AMaster和Model B基本表和视图 C外模式和内模式 D系统数据库和用户数据库 4在一个物资台账数据表中,能够成为
2、主关键字(或称主码)的字段是(B )。A物资类别 B物资编码 C规格型号 D计划单价 5在物理层面,SQL Server数据库是由数据文件和事务日志文件两个操作系统文件组成的,它们的后缀分别是( A)。 AMDF和LDF BLDF和MDF CDAT和LOG DLOG和DAT 6SQL Server数据库中的系统表的表名通常以(B )为前缀。 AMaster BSys CTable DSystem 7设一个关系为R,X和Y是它的两个属性集。若对于X上的每个值都有Y上的一个惟一值与之对应,则称X和Y(C )。 A属于第一范式 B属于第二范式 C具有函数依赖关系 D具有非函数依赖关系 8下列符合第三
3、范式的关系是(B )。 A教师(编号,姓名,系所编号,系所名称) B教师(编号,姓名,职称) C教师(编号,姓名,课程号,课程名称) D教师(编号,姓名,系所编号,系所主任姓名) 9一个关系中每条记录和第二个关系的每条记录进行连接,所组成的新关系称为( C)。 A两个关系的交 B两个关系的并 C两个关系的积 D两个关系的差 10SQL Server提供的Nchar、Nvarchar、Ntext等几种双字节数据类型实际上是一种(A )。 AUnicode数据类型 BASCII数据类型 C时间戳数据类型 D数值型类型 11一个用户访问SQL Server通常要依次经过4个层次的安全控制,分别是(
4、A)。 A操作系统、服务器、数据库、表和列 B表和列、数据库、服务器、操作系统 C操作系统、数据库、网络、列 D列、网络、数据库、操作系统 12下列哪些不属于索引的类型(D )。 A单列索引 B惟一索引 C聚集索引 D事务日志索引 13SQL Server中进行数据库备份的SQL语句是( B)。 AINSERT DATABASE BBACKUP DATABASE CRESTORE DATABASE DUPDATE DATABASE 14在成绩数据表中,要计算某课程的平均成绩,可采用(D )。 AMax函数 BMin函数 CCount函数 DAvg函数 15设课程成绩表的结构为(学号,课程号,成
5、绩),如果希望查询出“成绩大于90分且课程号首字母为A的所有记录”,则对应的SQL语句是(C )。 ASELECT * FROM 课程成绩表 WHERE 成绩90 AND 课程号 LIKE A% BSELECT * FROM 课程成绩表 WHERE 成绩90 OR 课程号 LIKE A% CSELECT * FROM 课程成绩表 WHERE 成绩90 AND 课程号 LIKE A% DSELECT * FROM 课程成绩表 WHERE 成绩90 OR 课程号 LIKE A% 1数据库管理系统中的( B )功能实现对数据库的插入、删除、修改。A、数据定义B、数据操纵C、数据库的运行管理D、数据库
6、的建立与维护2以二维表的形式表示关系之间的联系,属于关系模型中( A )的功能。A、数据结构B、规范性C、关系完整性D、数据独立性3在系统数据库中,( A )包含了系统级信息。A、master数据库B、tempdb数据库C、model数据库D、msdb数据库4如果要存储的数据是带有小数位的数据,应使用( A )做为数据类型。A、数值数据类型B、字符型C、日期时间型D、位型5下列( A )情况,适于建立索引。A、基本表的某列中记录数量特别多B、基本表的某列中记录数量特别少C、经常进行插入操作的基本表的某列D、经常进行删除操作的基本表的某列6下列关于视图的描述不正确的是( C )。A、视图是由行和
7、列组成的二维表B、视图可以限制用户对数据的访问C、视图与数据表是一样的D、视图是建立在基本表上的7对于教学管理数据库,当采用事务控制机制时,利用UPDATE语句将学生表中学号为“002”的学生的学号改为“2002”,还没来得急对成绩表进行更新操作,突然停电了,SQL的事务控制功能将( C )。A、保留对学生表的修改,机器重新启动后,自动进行对成绩表的更新B、保留对学生表的修改,机器重新启动后,提示用户对成绩表的进行更新C、清除对学生表的修改D、清除对学生表的修改,机器重新启动后,自动进行对学生表和成绩表的更新8下列关系中,符合第2范式但不符合第3范式的是( B )。A、姓名性别单位城市邮编联系
8、电话办公电话手机号张华男天津大学北京110110367653213511299898B、学号姓名性别专业课程号课程名课程学分成绩0101002张华男电子A02计算机网络568C、学号姓名性别专业0101002张华男电子D、姓名性别单位城市邮编办公电话手机号王明男天津大学北京1101103676512135112998989把第一个关系和第二个关系中都出现的记录提取出来,形成新的关系称为( C )。A、两个关系的和B、两个关系的并C、两个关系的交D、两个关系的差10如果希望从学生表中查询出同学的平均年龄,那么语句中应该包含( C )。A、SELECT MIN (年龄) AS 平均 FROM 学生
9、表B、SELECT MAX (年龄) AS 平均 FROM 学生表C、SELECT AVG (年龄) AS 平均 FROM 学生表D、SELECT COUNT (年龄) AS 平均 FROM 学生表11 数据库的备份不包括( A )。A、操作系统B、系统数据库C、用户数据库D、事务日志12下列说法中,( A )属于表设计原则。A、遵守第三范式标准的数据库设计B、尽可能的建立触发器C、适当使用视图D、尽可能多地采用外键13下列SQL语句中,能够对查询结果进行排序的是( A )。A、SELECT * FROM 学生表 WHERE 专业软件ORDER BY 年龄B、SELECT * FROM 学生表
10、 WHERE 专业软件C、SELECT * FROM 学生表 WHERE 专业软件AVG 年龄D、SELECT * FROM 学生表 WHERE 专业软件DISTINCT 年龄14查询姓名中带有“玲”字的学生,则条件语句应包含( B )。A、WHERE 姓名 LIKE % 玲B、WHERE 姓名 LIKE %玲C、WHERE 姓名 % LIKE玲LIKE D、WHERE 姓名 LIKE 玲%15下列SQL语句中,对字段创建唯一的聚集索引的约束是( B )。A、学号 char (8) NOT NULL CONSTRAINT un_no UNIQUE B、学号 char (8) NOT NULL
11、CONSTRAINT PK_学生表 PRIMARY KEYC、性别 char (2) NOT NULL check (性别男or 性别女) D、学号 char (8) NOT NULL1如果希望从学生表中查询出所有姓“王”的同学,那么条件语句应该是( B )。A、Where 姓名 % 王 B、Where 姓名 LIKE 王 C、Where 姓名 % LIKE王 D、Where 姓名 LIKE 王2通常情况下,“数据库管理系统”的英文缩写是( A )。A、DBMS B、DBS C、DBA D、DMS3从最终用户应用程序的视角看,数据库系统的三级模式结构是( C )。A、模式、外模式和内模式B、内
12、模式、外模式和模式C、外模式、模式和内模式D、外模式、内模式和模式4在一个学生关系中,能够成为主关键字(或称主码)的属性是( C )。A、性别B、年龄C、学号D、班级5有严格的数学基础的数据模型是( A )。A、关系模型B、网状模型C、层次模型D、面向对象模型6下列关于索引的说明不正确的是( A )。A、索引必须创建在主关键字之上B、索引与基本表分开存储C、索引是为了提高查询速度而创建的D、索引会在一定程度上影响增删改操作的效率7设关系R是满足第一范式的,若R中不存在非主属性对主键的部分函数依赖,则R符合( A )。A、第二范式B、第三范式C、BNC范式D、第四范式8下列符合第三范式的关系是(
13、 D )。A、学生(学号,姓名,课程号,课程名)B、学生(学号,姓名,课程名,成绩)C、学生(学号,姓名,课程号,成绩)D、学生(学号,姓名,性别)9在第一个关系中出现,而在第二个关系中不出现的记录组成的新关系称为( D )。A、两个关系的积B、两个关系的并C、两个关系的交D、两个关系的差10数据库应用程序开发中,需求分析阶段的主要目的是( A )。A、回答“干什么”的问题B、回答“怎么干”的问题C、建立逻辑数据模型D、建立最佳物理存储结构11用户使用SQL Server时,通常需要依次经过两个安全性阶段( C )。A、登录验证、操作验证B、操作验证、登录验证C、身份验证、权限认证D、权限认证
14、、身份验证12SQL Server数据库中的一个完整的备份通常要包括( A )。A、系统数据库、用户数据库和事务日志B、系统数据库、系统表和数据字典C、系统数据库、用户数据库和数据字典D、用户数据库和事务日志13SQL Server中进行数据库恢复的SQL语句是( C )。A、INSERT DATABASEB、BACKUP DATABASE C、RESTORE DATABASE D、UPDATE DATABASE14下列SQL语句中,能够完成并运算的是( A )。A、SELECT * FROM 篮球爱好者 UNION SELECT * FROM 足球爱好者B、SELECT * FROM 篮球爱
15、好者 INTERSECT SELECT * FROM 足球爱好者C、SELECT * FROM 篮球爱好者 EXCEPT SELECT * FROM 足球爱好者D、SELECT * FROM 篮球爱好者 ,足球爱好者15设学生表和课程表的结构分别为(学号,姓名)和(学号,课程号,成绩),如果希望查询出“成绩大于90分的学生姓名”,则对应的SQL语句是( D )。A、SELECT 姓名 FROM 学生表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩90B、SELECT 姓名 FROM 课程表 WHERE学生表.学号=课程表.学号 AND 课程表.成绩90C、SELECT 姓名 F
16、ROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 OR 课程表.成绩90D、SELECT 姓名 FROM 学生表,课程表 WHERE 学生表.学号=课程表.学号 AND 课程表.成绩90二、填空题(每空2分,共10分) 1SQL语言共分为四大类,即数据定义语言,数据查询语言,数据操纵语言、和 。数据控制语言2能够惟一标识某条记录的属性称为 主键(或主码、主关键字) 3关系的规范化程度可分为多个级别,但通常只需要达到第 三 范式即可。4备份是指将数据从硬盘复制到可移动媒体上的过程。 1数据库系统的三级模式是指 外模式 、 模式 和 内模式 。2数据库还原方式包括 完全还原方式 、简
17、单还原方式和大容量日志记录还原方式 。3数据库设计的主要原则包括 表设计原则 、 字段设计原则 和 其他原则。4关系完整性是指关系模型中数据的 正确性 、 一致性 和 有效性 。5SQL Server 中的事务处理控制语句, COMMIT TRAN SACTION 实现提交一个事务。1数据库系统的三级模式结构是指数据库系统由外模式、 模式 和 内模式 三级抽象模式构成。2进行数据库备份时,必须同时复制主数据文件和事务日志文件。3“实体一联系”方法是描述数据库概念模型的主要方法,一般称这种方法为E-R方法(或ER图方法)。4用户使用SQL Server数据库时,一般需要经过两个安全性阶段:身份验
18、证和权限认证。三、判断题(正确的在括号内打上“”,错误的打上“”。每小题2分,共10分)1数据流图是需求分析的常用工具之一,人们也经常称它为DFD图( )。 2数据库中只有一个模式,也只有一个内模式,所以模式内模式映像是惟一的。()。 3SQL Server数据库中的NULL值(空值)表示的是 “空格”或“0”值( ) 4SQL Server中的tempdb数据库是一个临时数据库,属用户数据库( ) 5SQL虽被称为“查询语言”,其功能却不仅仅限于查询( ) 1DROP VIEW的功能是删除表结构。( )2索引与视图具有相同的用途。( )3触发器是一种特殊的存储过程,它基于一个表创建,可以针对
19、多个表进行操作。()4每个用户需要通过登录账号建立自己的连接能力,以便获得对SQL的访问权限。()5B/S模式的实际上就是两层结构的C/S模式。( )1计算机数据处理技术大致经历了人工管理、文件管理和SQL Server数据库管理三大阶段()。2能够惟一表示数据表中的每条记录的字段或者字段的组合称为主码或主键()。3SQL Server数据库中的NULL值(空值)表示的是 “空格”或“0”值()4一个不规范的关系模式通常会引发插入异常、删除异常和更新异常,导致大量的数据冗余。()5目前的关系数据库系统一般都支持标准SQL语句()四、简述题(每小题5分,共2题10分) 1请简要说明SQL Ser
20、ver数据库备份有哪几种方式? SQL Server提供了四种不同的方式:数据库完全备份(2分)、增量备份(2分)、事务日志备份,以及数据库文件和文件组备份(1分)2请简要说明开发数据库应用系统时,结构设计和行为设计的含义。 从系统开发的角度,数据库应用系统的建设工作包括结构与行为两个方面:(a)结构设计,着重描述数据库的结构及各数据库对象间关系,要求在满足应用需求的前提下,尽可能地达到第三范式;(2分)(b)行为设计,主要目的是描述对数据库的操作动作,这些行为和动作将来要体现在应用程序中,所以行为的设计主要是应用程序的设计。(2分)根据系统的结构和行为两方面特性,系统设计开发分为两个部分,一
21、部分是作为数据库应用系统核心和基石的数据库设计,另一部分是相应的数据库应用软件的设计开发,二者相辅相成,组成统一的数据库工程。1什么是数据和数据处理?数据与信息的区别联系是什么?参考答案:数据(Data)是一组表示数量、行动和目标的非随机的可鉴别的符号。数据处理通常包括查找、统计、分类、修改、计算、汇总等各种方法。数据(Data)是一组表示数量、行动和目标的非随机的可鉴别的符号。信息(Information)是经过加工的,能对接收者的行为和决策产生影响的、有价值的数据。如果将数据比喻为原料,那么信息就是数据经过加工而生产的产品,是有价值的数据。与原料和产品的概念相似,一个系统的产品可能是另一个
22、系统的原料,那么一个系统的信息可能成为另一个系统的数据。2请简要说明数据库应用系统设计的步骤。参考答案:数据库应用系统设计的步骤包括需求分析、概念设计、逻辑设计和物理设计。1请简要说明视图的概念和作用参考答案及评分要点:视图是在基本表或其他视图上建立的表,它的结构和内容都来自某个基本表,是依据基本表存在而存在的(2分)。删除一个视图时,不会对基本表产生任何影响,但当删除一张基本表时,与之相关联的视图就会自动被删除(1分)。其作用主要是:(1)视图是经过预编译的SELECT语句,存储在数据库服务器端,因此执行视图比从客户端直接执行SELECT语句速度更快、效率更高一些。(2)视图属于用户模式范畴
23、,在实际中,一般的用户不一定具有SELECT语句方面的专门知识,从用户友好性角度来说,视图更便于用户使用。(3)利用视图可以简化的形式表达复杂的SELECT语句组,如嵌套查询等。(每答对1点得1分,最高2分)。2什么是函数依赖与函数决定,请举例说明参考答案及评分要点:设一个关系为R,X和Y是它的两个属性集。若对于X上的每个值都有Y上的一个惟一值与之对应,则称X和Y具有函数依赖关系,并称X函数决定Y,或称Y函数依赖于X,称X为决定因素(2分)。假设一个职工关系为(职工号,姓名,性别,年龄,职务),职工号用来标识每个职工,选作该关系的主键(举例恰当得1分)。我们可以从以下两方面理解函数依赖的概念:
24、首先,对于该关系中每个职工的职工号,都对应着姓名属性中的惟一值,即该职工的姓名,或者说一个职工的姓名由其职工号惟一确定,所以称职工号函数决定姓名,或称姓名函数依赖于职工号(1分)。其次,除职工号外,其他属性都不能成为决定因素形成函数依赖,因为对于它们的每个属性值,都可能对应另一属性的多个不同的取值,比如对于性别属性的一个取值“男”就会对应多个而不是一个职工号(1分)。五、综合应用题(第1、2题每题10分,第3题20分,共40分) 1用SQL语句创建简单数据表 设有物资台账数据表T,包括物资编号TNo,物资姓名TN,单价TD等字段;TNo和TN为字符型(长度20),TD为数值型(带小数)。TNo
25、是主键,请用SQL语句创建该数据表T。 CREATE TABLE T ( TNo CHAR(20) PRIMARY KEY,TN CHAR(20), TD Money ); 2用SQL语句创建带外键约束的数据表 在上题基础上,假设还存在物资入库数据表C,包括物资编号CNo,入库数量Cn等字段。Cn为数值型(两位小数)。Cno为字符型(长度10)。该数据表与物资台账数据表T之间存在外键约束,即物资台账数据表T中不存在的记录不能够出现在该表中。请根据上述说明,用SQL创建工资数据表C CREATE TABLE C ( CNo CHAR(10), Cn numeric, FOREIGN KEY (C
26、No) REFERENCES T(TNo) );3程序应用题 设学生成绩表的结构为(学号、课程号、成绩),程序运行界面如图1所示。进入界面后,用户首先选择学号(Combo1)、课程号(Combo2),姓名(Text1)和课程名(Text2)从数据库中自动读入;然后,用户修改对应的成绩(Text3),点击“确认”按钮后,将结果更新到学生成绩表中。请补充完成下列程序代码。Command1 图1“修改记录”窗体运行界面 Private Sub Command1_Click()声明一个字符串变量 Dim strSQL AS String 第一步:拼写Update语句 strSQL =“ ” 第二步:执
27、行Update语句 strSQL End Sub Private Sub Command1_Click() 声明一个字符串变量Dim strSQL AS String 第一步:拼写Update语句 strSQL=“Update 学生成绩表 Set 成绩=“+Text3+”Where 学号=“+Combo1.Text+”And 课程号=“+Combo2.Text+”(本小点10分) 第二步:执行Update语句 ADOrs.Execute strSQL (本小点10分) End Sub1用SQL语句创建简单数据表设有某数据库中有课程表(表名为Courses),包括课程号CNo、课程名CName两
28、个字段。CNo和CName均为字符型(长度10)。CNo是主键,请用SQL语句创建该数据表Courses。参考答案及评分要点:参考答案CREATE TABLE Courses( CNo CHAR(10) PRIMARY KEY, CName CHAR(10),);2利用SQL语句进行查询在第五大题第1题的基础上,假设还存在成绩表(表名marks),包括学号SNo,课程号CNo和成绩mark三个字段。某教师希望查询课程号为“JK001”的课程的所有学生成绩,并按如图1所示的方式显示查询结果,请写出对应的Select查询语句。图1 要求的显示结果参考答案及评分要点:参考答案SELECT cours
29、es.Cno,Cname,Sno,mark FROM courses,marks WHERE courses.Cno=marks.Cno and courses.Cno=JK0013程序应用题接第五大题第2小题,某教学管理系统中包括课程信息录入功能,程序运行界面如图2所示,其中Text1课程号、Text2为课程名。进入界面后,用户输入所有数据后,点击“确认”按钮后,将结果插入到课程表Courses中。请补充完成下列程序代码。图2“增加记录”窗体运行界面Private Sub Command1_Click() 声明一个记录集对象Dim ADOrs As New Recordset 将记录集对象与
30、已建立的数据库联接对象ADOcn绑定ADOrs.ActiveConnection=ADOcn 第一步:在课程表Courses中查询是否存在关键字相同的记录 (1)拼写查询字符串strSQL=“Select CNo From courses Where Cno=” + Text1 + “” (2)执行查询语句 strSQL 第二步:如果记录已经存在,则退出程序If Not Then MsgBox “记录已存在,不能继续增加” Exit Sub End If 第三步:将结果插入到课程表Courses中 (1)拼写Insert插入语句strSQL = (2)执行Insert插入语句 strSQL E
31、nd Sub参考答案及评分要点: 第一步:在课程表Courses中查询是否存在关键字相同的记录 strSQL=“Select CNo From courses Where Cno=” + Text1 + “” ADOrs.Open StrSQL (本小点4分) 第二步:如果记录已经存在,则退出程序 If Not ADOrs.EOF Then (本小点6分) MsgBox “记录已存在,不能继续增加” Exit Sub End If 第三步:将结果插入到课程表Courses中strSQL = “Insert Into courses(Cno,CName) Values(”+Text1+“,”+T
32、ext2+“)” (本小点6分) ADOcn.Execute strSQL (本小点4分) End Sub1用SQL语句创建简单数据表设有两个关系(1)教师关系T,包括教师编号TNo,姓名TN,系别TD,职称RANK;(2)课程关系C,包括课程号CNo,课程名CN。教师编号和课程号分别是上述两个关系的主键,请用SQL语句创建教师数据表T。参考答案及评分要点:参考答案CREATE TABLE T TNo INT PRIMARY KEY, TN CHAR(30), TD CHAR(20), RANK CHAR(20);2用SQL语句创建数据表在上题基础上,假设还存在教师教授课程关系TC,包括教师编
33、号TNo和课程号CNo。注意:说明主键码和外键码约束参考答案及评分要点:参考答案CREATE TABLE TCTNo INT,CNo INT,PRIMARY KEY (Tno,Cno),FOREIGN KEY (TNo) REFERENCES T(TNo),FOREIGN KEY (CNo) REFERENCES C(CNo);3利用SQL语句进行查询在上题的基础上,如果要查询“张红老师承担的所有课程”,请写出对应的SQL查询语句。参考答案SELECT C.CNo,C.CN FROM T,C,TCWHERE T.TNo=TC.TNo AND C.CN=TC.CNo AND T.TN=张红4程序
34、应用题设学生成绩表的结构为(学号、课程号、成绩),程序运行界面如图1所示。进入界面后,用户首先选择学号(Combo1)、课程号(Combo2),姓名(Text1)和课程名(Text2)从数据库中自动读入;然后,用户输入对应的成绩(Text3),点击“确认”按钮后,将结果插入到学生成绩表中。请补充完成下列程序代码。图1“增加记录”窗体运行界面Private Sub Command1_Click() 声明一个记录集对象Dim ADOrs As New Recordset 将记录集对象与已建立的数据库联接对象ADOcn绑定ADOrs.ActiveConnection=ADOcn 第一步:在学生成绩表
35、中查询是否存在关键字相同的记录 (1)拼写查询字符串strSQL =“ ” (2)执行查询语句 strSQL 第二步:如果关键字重复,则退出程序If Not Then MsgBox “记录已存在,不能继续增加” Exit Sub End If 第三步:将结果插入到学生成绩表中 StrSQL=”Insert Into 学生成绩表(学号,课程号,成绩) Values( ”+Combo1.Text+” , “+Combo2.Text+” , “+Str(Val(Text3.Text)+”)” StrSQL End Sub参考答案及评分要点: 第一步:在学生成绩表中查询是否存在关键字相同的记录 str
36、SQL=”Select * From 学生成绩表 Where 学号= ”+combo1.Text+” And 课程号= “+Combo2.Text+” “(本小点3分) ADOrs.Open StrSQL (本小点2分) 第二步:如果关键字重复,则退出程序 If Not ADOrs.EOF Then (本小点3分) MsgBox “记录已存在,不能继续增加” Exit Sub End If 第三步:将结果插入到学生成绩表中 StrSQL=”Insert Into 学生成绩表(学号,课程号,成绩) Values( ”+Combo1.Text+” , “+Combo2.Text+” , “+Str(Val(Text3.Text)+”)” ADOcn.Execute StrSQL (本小点2分) End Sub