数据库应用简答题及综合题
答:(1)相互关联的数据集合;(2)较少的数据冗余;(3)程序与数据相互独立;(4)保证数据的安全可靠;(5)最大限度地保证数据的正确性;(6)数据可以共享并能保证数据的一致性
2. 数据独立性指的是什么?它能带来哪些好处?(本题2分)
答:数据独立性包括逻辑独立性和物理独立性两部分。物理独立性是指当数据的存储结构发生变化时,不影响数据库模式;逻辑独立性是指当模式发生变化时,不影响外模式,从而不影响应用程序的特性。这两个独立性使用户只需关心逻辑层即可,同时增强了应用程序的可维护性。
3. 说明实体-联系模型中的实体、属性和联系的概念。(本题1分)
答:实体是具有公共性质的并可相互区分的现实世界对象的集合。属性是实体所具有的特征或性质。联系是实体之间的关联关系。
1. 关系数据库的三个完整性约束是什么?各是什么含义?(本题2分)
答:实体完整性指关系数据库中所有的表都必须有主键。参照完整性用于描述和约束实体之间的关联关系。用户定义的完整性是针对某一具体应用领域定义的数据约束条件,它反映某一具体应用所涉及的数据必须满足应用语义的要求。
1 / 21
2. 设有关系模式:学生修课(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。设一个学生可选多门课程,一门课程可以被多个学生选。每个学生由学号唯一标识,一个学生只在一个系学习;每门课程由课程号唯一标识。每个学生选的每门课程有唯一的成绩。 (1)请指出此关系模式的候选键。 (2)写出该关系模式的函数依赖集。
(3)该关系模式属于第几范式?请简单说明理由。
(4)若不是第三范式的,请将其规范化为第三范式关系模式,并指出分解后每个关系模式的主键和外键。 (本题3分)
答:(1)候选键:(学号,课程号)
(2)学号→姓名,学号→所在系,学号→性别,课程号→课程名,课程号→学分, (学号,课程号)→成绩
(3)属于第一范式,因为存在部分函数依赖:学号→姓名。
(4)第三范式关系模式:
学生(学号,姓名,所在系,性别) 课程(课程号,课程名,学分)
考试(学号,课程号,成绩),学号为引用学生的外键,课程号为引用课程的外键。
1.SQL Server 最核心的服务是什么?(本题1分)
2 / 21
答:数据库引擎服务。
2.启动服务使用的是SQL Server 的哪个工具?(本题1分)
SQL Server配置管理器。
3.SQL Server数据库由几类文件组成?这些文件的推荐扩展名分别是什么?(本题3分)
答:由2类文件组成:数据文件和日志文件。主要数据文件的推荐扩展名为mdf,次要数据文件的推荐扩展名为ndf,日志文件的推荐扩展名为ldf
1. 简述SQL语言的功能,每个功能的作用是什么?(本题3分)
答:SQL按其功能可分为四大部分:数据定义、数据控制、数据查询和数据操作。数据定义功能用于定义、删除和修改数据库中的对象;数据查询功能用于实现查询数据的功能,查询数据是数据库中使用最多的操作;数据操作功能用于增加、删除和修改数据;数据控制功能用于控制用户对数据库的操作权限。
2. Transact-SQL支持的主要数据类型有哪些?(本题2分)
答:数值类型(包括准确数值类型和浮点数值类型)、字符串类型(包括统一字符编码的字符串类型和普通字符编码的字符串类型)、日期时间类型以及二进制数据类型。
1. WHERE Age BETWEEN 20 AND 30子句,查找的Age范围是多少?(本题1分)
答:Age大于等于20并且小于等于30
3 / 21
2. “WHERE Sdept NOT IN ('CS', 'IS', 'MA')”子句,查找的数据是什么?(本题1分)
答:查找'CS', 'IS', 'MA'三个系之外的其他系
3. 自连接与普通内连接的主要区别是什么?(本题1分)
答:自连接中进行连接操作的表在物理上是一张表,而普通内连接进行连接的表在物理上是两张表。
4. 外连接与内连接的主要区别是什么?(本题1分)
答:进行外连接操作时,其连接结果中将包含一张表中的所有数据,不管该数据是否满足连接条件;而进行内连接操作时,其连接结果必须是两个表中都满足连接条件的数据。
5. 相关子查询与嵌套子查询在执行方面的主要区别是什么?(本题1分)
答:相关子查询的执行过程是先外后内,而嵌套子查询的执行过程是先内后外。而且相关子查询中必须有与外层查询的关联,而嵌套子查询中,内、外层查询不需要有关联关系。
1. 试说明使用视图的好处。(本题1分)
答:利用视图可以简化客户端的数据查询语句,使用户能从多角度看待同一数据,可以提高数据的安全性,视图对应数据库三级模式中的外模式,因此提供了一定程度的逻辑独立性。
2. 索引的作用是什么?(本题1分)
4 / 21
答:索引可以加快数据的查询效率。
3. 索引分为哪几种类型?分别是什么?它们的主要区别是什么?(本题1分)
答:分为聚集索引和非聚集索引两种。聚集索引会对数据进行物理排序,非聚集索引不对数据进行物理排序。
4. 存储过程的作用是什么?为什么利用存储过程可以提高数据的操作效率?(本题1分)
答:存储过程可以提供模块化程序设计,提高数据操作效率,简化客户端编程。
因为数据库管理系统是在创建存储过程时对SQL代码进行分析和优化,并在第一次执行时进行语法检查和编译,将编译好的可执行代码存储在内存的一个专门缓冲区中,以后再执行此存储过程时,只需直接执行内存中的可执行代码即可。
5. 触发器的作用是什么? 前触发和后触发的主要区别是什么?(本题1分)
答:触发器可以实现复杂的完整性约束,同时还可以实现一些商业规则。
前触发器并不真正执行引发触发器执行才数据操作语句;后触发器是在引发触发器执行的数据操作语句执行完后,再引
5 / 21