数据库原理与应用教程SQLServer课后习题答案详解.docx
- 文档编号:11302910
- 上传时间:2023-02-26
- 格式:DOCX
- 页数:38
- 大小:104.43KB
数据库原理与应用教程SQLServer课后习题答案详解.docx
《数据库原理与应用教程SQLServer课后习题答案详解.docx》由会员分享,可在线阅读,更多相关《数据库原理与应用教程SQLServer课后习题答案详解.docx(38页珍藏版)》请在冰豆网上搜索。
数据库原理与应用教程SQLServer课后习题答案详解
数据库原理与应用教程―SQLServer
习题解答详解
第1章习题
1.数据库的发展历史分哪几个阶段?
各有什么特点?
答:
数据库技术经历了人工管理阶段、文件系统阶段和数据库系统三个阶段。
1)人工管理阶段
这个时期数据管理的特点是:
数据由计算或处理它的程序自行携带,数据和应用程序一一对应,应用程序依赖于数据的物理组织,因此数据的独立性差,数据不能被长期保存,数据的冗余度大等给数据的维护带来许多问题。
2)文件系统阶段
…
在此阶段,数据以文件的形式进行组织,并能长期保留在外存储器上,用户能对数据文件进行查询、修改、插入和删除等操作。
程序与数据有了一定的独立性,程序和数据分开存储,然而依旧存在数据的冗余度大及数据的不一致性等缺点。
3)数据库系统阶段
数据库系统的特点如下:
(1)数据结构化
(2)较高的数据共享性
(3)较高的数据独立性
(4)数据由DBMS统一管理和控制
2.简述数据、数据库、数据库管理系统、数据库应用系统的概念。
答:
数据是描述事物的符号记录,是信息的载体,是信息的具体表现形式。
数据库就是存放数据的仓库,是将数据按一定的数据模型组织、描述和存储,能够自动进行查询和修改的数据集合。
数据库管理系统是数据库系统的核心,是为数据库的建立、使用和维护而配置的软件。
它建立在操作系统的基础上,位于用户与操作系统之间的一层数据管理软件,它为用户或应用程序提供访问数据库的方法,包括数据库的创建、查询、更新及各种数据控制等。
凡使用数据库技术管理其数据的系统都称为数据库应用系统。
3.简述数据库管理系统的功能。
答:
数据库管理系统是数据库系统的核心软件,一般说来,其功能主要包括以下5个方面。
(1)数据定义和操纵功能
(2)数据库运行控制功能
(3)数据库的组织、存储和管理
(4)建立和维护数据库
(5)数据通信接口
4.简述数据库的三级模式和两级映像。
答:
为了保障数据与程序之间的独立性,使用户能以简单的逻辑结构操作数据而无需考虑数据的物理结构,简化了应用程序的编制和程序员的负担,增强系统的可靠性。
通常DBMS将数据库的体系结构分为三级模式:
外模式、模式和内模式。
模式也称概念模式或逻辑模式,是对数据库中全部数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
外模式也称子模式或用户模式,它是对数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述。
内模式也称存储模式或物理模式,是对数据物理结构和存储方式的描述,是数据在数据库内部的表示方式,一个数据库只有一个内模式。
三级模式结构之间差别往往很大,为了实现这3个抽象级别的联系和转换,DBMS在三级模式结构之间提供了两级映像:
外模式/模式映像,模式/内模式映像。
5.简述数据库的逻辑独立性和物理独立性。
答:
当模式改变时(如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式映像作相应改变,可以使外模式保持不变。
应用程序是依据数据的外模式编写的,因而应用程序不必修改,保证了数据与程序的逻辑独立性,简称逻辑数据独立性。
当数据库的存储结构改变了(如选用了另一种存储结构),由数据库管理员对模式/内模式映像作相应改变,可以保证模式保持小变,因而应用程序也不必改变。
保证了数据与程序的物理独立性,简称物理数据独立性。
6.简述几种数据库新技术的特点。
答:
分布式数据库系统的主要特点是:
(1)数据是分布的。
(2)数据是逻辑相关的。
(3)结点的自治性。
面向对象数据库系统强调在数据库框架中发展类型、数据抽象、继承和持久性。
它的基本设计思想是,一方面把面向对象语言向数据库方向扩展,使应用程序能够存取并处理对象,另一方面扩展数据库系统,使其具有面向对象的特征,提供一种综合的语义数据建模概念集,以便对现实世界中复杂应用的实体和联系建模。
多媒体数据库系统(Multi-mediaDatabaseSystem,MDBS)是数据库技术与多媒体技术相结合的产物。
多媒体数据库不是对现有的数据进行界面上的包装,而是从多媒体数据与信息本身的特性出发,考虑将其引入到数据库中之后而带来的有关问题。
数据仓库(DataWarehouse)是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。
第2章习题
1.信息有哪三种世界,它们各有什么特点,它们之间有什么联系?
答:
现实世界、信息世界和机器世界
现实世界就是存在于人脑之外的客观世界,客观事物及其相互联系就处于现实世界中。
信息世界就是现实世界在人们头脑中的反映,又称概念世界。
客观事物在信息世界中称为实体,反映事物间联系的是实体模型或概念模型。
数据世界就是信息世界中的信息数据化后对应的产物。
现实世界中的客观事物及其联系,在数据世界中以数据模型描述。
计算机信息处理的对象是现实生活中的客观事物,在对客观事物实施处理的过程中,首先要经历了解、熟悉的过程,从观测中抽象出大量描述客观事物的信息,再对这些信息进行整理、分类和规范,进而将规范化的信息数据化,最终由数据库系统存储、处理。
2.什么是概念模型,什么是数据模型?
答:
概念模型是现实世界的抽象反映,它表示实体类型及实体间的联系,是独立于计算机系统的模型,是现实世界到机器世界的一个中间层次。
数据模型是对客观事物及联系的数据描述,是概念模型的数据化,即数据模型提供表示和组织数据的方法。
3.什么是实体、属性、码、联系?
答:
客观存在并可以相互区分的事物叫实体。
属性是实体所具有的某些特性,通过属性对实体进行描述。
一个实体往往有多个属性,这些属性之间是有关系的,它们构成该实体的属性集合。
如果其中有一个属性或属性集能够唯一标识整个属性集合,则称该属性或属性集为该实体的码。
现实世界的事物之间是有联系的,即各实体型之间是有联系的。
就两个实体型的联系来说,主要有以下3种情况:
一对一联系(1:
1)、一对多联系(1:
M)和多对多联系(M:
N)。
4.实体的联系有哪三种?
答:
一对一联系(1:
1)、一对多联系(1:
M)和多对多联系(M:
N)。
5.分析层次模型、网状模型和关系模型的特点。
答:
层次模型用树形结构来表示各类实体以及实体间的联系。
每个结点表示一个记录类型,结点之间的连线表示记录类型间的联系,这种联系只能是父子联系。
层次模型存在如下特点:
(1)只有一个结点没有双亲结点,称为根结点。
(2)根结点以外的其他结点有且只有一个双亲结点。
网状数据模型是一种比层次模型更具普遍性的结构,它去掉了层次模型的两个限制,允许多个结点没有双亲结点,也允许一个结点有多个双亲结点。
因此,网状模型可以方便地表示各种类型的联系。
网状模型是一种较为通用的模型,从图论的观点看,它是一个不加任何条件的无向图。
用二维表格结构表示实体以及实体之间的联系的数据模型称为关系模型。
关系模型在用户看来是一个二维表格。
6.解释关系模型的基本概念:
关系、元组、属性、域、关系模式、候选关键字、主键、外键、主属性。
答:
关系:
一个关系就是一张二维表。
元组:
二维表中的行称为元组,每一行是一个元组。
属性:
二维表的列称为属性,每一列有一个属性名,属性值是属性的具体值。
域:
是属性的取值范围。
关系模式:
对关系的信息结构及语义限制的描述称为关系模式,用关系名和包含的属性名的集合表示。
候选关键字:
如果在一个关系中,存在多个属性(或属性组合)都能用来唯一标识该关系中的元组,这些属性(或属性组合)都称为该关系的候选关键字或候选码,候选码可以有多个。
主键:
在一个关系的若干候选关键字中,被指定作为关键字的候选关键字称为该关的主键或主码。
主属性:
在一个关系中,包含在任何候选关键字中的各个属性称为主属性。
外键:
一个关系的某个属性(或属性组合)不是该关系的主键或只是主键的一部分,却是另一个关系的主码,则称这样的属性为该关系的外键或外码。
7.设某工厂数据库中有四个实体集。
一是“仓库”实体集,属性有仓库号、仓库面积等;二是“零件”实体集,属性有零件号、零件名、规格、单价等;三是“供应商”实体集,属性有供应商号、供应商名、地址等;四是“保管员”实体集,属性有职工号、姓名等。
设仓库与零件之间有“存放”联系,每个仓库可存放多种零件,每种零件可存放于若干仓库中,每个仓库存放每种零件要记录库存量;供应商与零件之间有“供应”联系,一个供应商可供应多种零件,每种零件也可由多个供应商提供,每个供应商每提供一种零件要记录供应量;仓库与保管员之间有“工作”联系,一个仓库可以有多名保管员,但一名保管员只能在一个仓库工作。
(1)试为该工厂的数据库设计一个ER模型,要求标注联系类型,可省略实体属性。
(2)根据转换规则,将ER模型转换成关系模型,要求标明每个关系模式的主键和外键。
答:
(1)ER模型
(2)关系模式:
仓库(仓库号,仓库面积)
零件(零件号,零件名,规格,单价)
供应商(供应商号,供应商名,地址)
保管员(职工号,姓名,仓库号)
库存(仓库号,零件号,库存量)
供应(供应商号,零件号,供应量)
8.某网上订书系统,涉及如下信息:
(1)客户:
客户号、姓名、地址、联系电话。
(2)图书:
书号、书名、出版社、单价。
(3)订单:
订单号、日期、付款方式、总金额。
其中:
一份订单可订购多种图书,每种图书可订购多本;一位客户可有多份订单,一份订单仅对应一位客户。
(1)根据以上叙述,建立ER模型,要求标注联系类型(可省略实体的属性)。
(2)根据转换规则,将ER模型转换成关系模型,要求标注每个关系模型的主键和外键(如果存在)。
答:
(1)ER模型
(2)关系模式:
客户(客户号,姓名,地址,联系电话,订单号)
图书(书号,书名,出版社,单价)
订单(订单号,日期,付款方式,总金额)
订购(订单号,书号,数量)
第3章习题
1.关系数据模型由哪三个要素组成。
答:
关系数据模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
2.简述关系的性质。
答:
(1)列是同质的,即每一列中的分量是同一类型的数据,来自同一个域。
(2)在同一个关系中,不同的列的数据可以是同一种数据类型,但各属性的名称都必须是互不相同。
(3)同一个关系中,任意两个元组都不能完全相同。
(4)在一个关系中,列的次序无关紧要。
即列的排列顺序是不分先后的。
(5)在一个关系中,元组的位置无关紧要。
即排行不分先后,可以任意交换两行的位置。
(6)关系中的每个属性必须是单值,即不可再分,这就要求关系的结构不能嵌套。
这是关系应满足的最基本的条件。
3.简述关系的完整性。
答:
关系模型允许定义三类完整性约束:
实体完整性、参照完整性和用户自定义的完整性约束。
实体完整性规则要求关系中元组在组成主码的属性上不能有空值。
参照完整性规则:
若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S可能是相同的关系),则对于R中每个元组在F上的值必须为:
或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主码值。
用户定义的完整性规则由用户根据实际情况对数据库中数据的内容进行的规定,也称为域完整性规则。
4.传统的集合运算和专门的关系运算都有哪些。
答:
(1)传统的集合操作:
并、差、交、笛卡儿积。
(2)专门的关系操作:
投影(对关系进行垂直分割)、选择(水平分割)、连接(关系的结合)、除法(笛卡儿积的逆运算)等。
5.根据给定的关系模式进行查询。
设有学生-课程关系数据库,它由三个关系组成,它们的模式是:
学生S(学号S#,姓名SN,所在系SD,年龄SA)、课程C(课程号C#,课程名CN,先修课号PC#)、SC(学号S#,课程号C#,成绩G)。
请用关系代数分别写出下列查询:
(1)检索学生的所有情况。
∏S#,SN,SD,SA(S)
(2)检索学生年龄大于等于20岁的学生姓名。
∏SN(σSA≥20(S))
(3)检索先修课号为C2的课程号。
∏C#(σPC#=’C2’(C))
(4)检索课程号C1的成绩为A的所有学生姓名。
∏SN(σC#=’C1’∧G=’A’(S∞SC))
(5)检索学号为S1的学生选修的所有课程名及先修课号。
∏CN,PC#(σS#=’S1’(C∞SC))
(6)检索年龄为23岁的学生所选修的课程名。
∏CN(σSA=23(C∞SC∞S))
第4章习题
1.解释下列术语的含义:
函数依赖、平凡函数依赖、非平凡函数依赖、部分函数依赖、完全函数依赖、传递函数依赖、范式。
答:
函数依赖:
指在关系R中,X、Y为R的两个属性或属性组,如果对于R的所有关系r都存在:
对于X的每一个具体值,Y都只有一个具体值与之对应,则称属性Y函数依赖于属性X。
记作X→Y。
当Y不函数依赖于X时,记作:
X
Y。
当X→Y且Y→X时,则记作:
X↔Y。
平凡函数依赖:
设关系模式R(U),U是R上的属性集,X、Y⊆U;如果X→Y,且Y⊆X,则称X→Y为平凡的函数依赖。
非平凡函数依赖、如果X→Y,且Y不是X的子集,则称X→Y为非平凡的函数依赖。
完全函数依赖:
设关系模式R(U),U是R上的属性集,X、Y⊆U;如果X→Y,并且对于X的任何一个真子集Z,Z→Y都不成立,则称Y完全函数依赖于X;
部分函数依赖:
如果X→Y,但对于X的某一个真子集Z,有Z→Y成立,则称Y部分函数依赖于X。
传递函数依赖:
设关系模式R(U),X⊆U,Y⊆U,Z⊆U;如果X→Y,Y→Z成立,但Y→X不成立,且Z-X、Z-Y和Y-X均不空,则称X→Z为传递函数依赖。
范式:
范式(NormalForm)是符合某一种级别的关系模式的集合,是衡量关系模式规范化程度的标准,达到的关系才是规范化的。
2.简述非规范化的关系中存在哪些问题。
答:
①数据冗余②更新异常③插入异常④删除异常
3.简述关系模式规范化的目的。
答:
关系模式规范化的目的是解决关系模式中存在的数据冗余、插入和删除异常以及更新异常等问题。
其基本思想是消除数据依赖中的不合适部分,使各关系模式达到某种程度的分离,使一个关系描述一个概念、一个实体或实体间的一种联系。
因此,规范化的实质是概念的单一化。
4.要建立关于系、学生、班级、研究会等信息的一个关系数据库。
规定:
一个系有若干专业、每个专业每年只招一个班,每个班有若干学生,一个系的学生住在同一个宿舍区。
每个学生可参加若干研究会,每个研究会有若干学生。
学生参加某研究会,有一个入会年份。
描述学生的属性有:
学号、姓名、出生年月、系名、班号、宿舍区。
描述班级的属性有:
班号、专业名、系名、人数、入校年份。
描述系的属性有:
系号、系名、系办公室地点、人数。
描述研究会的属性有:
研究会名、成立年份、地点、人数。
试给出上述数据库的关系模式;写出每个关系的基本的函数依赖集;指出是否存在传递函数依赖,指出各关系的主码和外码。
答:
关系模式:
学生(学号,姓名,出生年月,系号,班号,宿舍区)
班级(班号,专业名,系号,人数,入校年份)
系(系号,系名,系办公室地点,人数)
研究会(研究会名,成立年份,地点,人数)
参加研究会(学号,研究会名,入会年份)
学生关系的基本函数依赖集:
学号→(姓名,出生年月,系号,班号),系名→宿舍区
班级关系的基本函数依赖集:
班号→(专业名,系号,人数,入校年份)
系关系的基本函数依赖集:
系名→(系号,系办公室地点,人数)
研究会关系的基本函数依赖集:
研究会名→(成立年份,地点,人数)
参加研究会关系的基本函数依赖集:
(学号,研究会名)→入会年份
5.设有关系模式R(运动员编号,姓名,性别,班级,班主任,项目号,项目名,成绩)如果规定:
每名运动员只能代表一个班级参加比赛,每个班级只能有一个班主任;每名运动员可参加多个项目,每个比赛项目也可由多名运动员参加;每个项目只能有一个项目名;每名运动员参加一个项目只能有一个成绩。
根据上述语义,回答下列问题:
(1)写出关系模式R的主关键字;
(2)分析R最高属于第几范式,说明理由。
(3)若R不是3NF,将其分解为3NF。
答:
(1)关系模式R的主关键字是{运动员编号,项目号}。
(2)R最高属于第一范式。
因为存在着姓名,性别,班级和项目名对主关键字{运动员编号,项目号}的部分函数依赖,没有达到2NF。
(3)首先分解为2NF:
R1(运动员编号,姓名,性别,班级,班主任),R2(项目号,项目名),R3(运动员编号,项目号,成绩)
因为R1存在班主任对运动员编号的传递函数依赖,所以没有达到3NF,再分解为3NF:
R1分解为R1(运动员编号,姓名,性别,班级)和R4(班级,班主任)
6.设有关系模式:
R(职工号,日期,日营业额,部门名,部门经理)
如果规定:
每个职工每天只有一个营业额,每个职工只在一个部门工作,每个部门只有一个经理。
(1)根据上述规定,写出模式R主关键字。
(2)分析R最高属于第几范式,说明理由。
(3)若R不是3NF,将其分解为3NF。
答:
(1)关系模式R的主关键字是(职工号,日期)。
(2)R最高属于第一范式。
因为存在着部门名对主关键字(职工号,日期)的部分函数依赖,没有达到2NF。
(3)首先分解为2NF:
R1(职工号,部门名,部门经理),R2(职工号,日期,日营业额)
因为R1存在部门经理对职工号的传递函数依赖,所以没有达到3NF,再分解为3NF:
R1分解为R1(职工号,部门名)和R3(部门名,部门经理)
第5章习题
1.简述数据库设计过程。
答:
数据库设计可分为以下六个阶段:
需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、数据库物理设计阶段、数据库实施阶段以及数据库运行和维护阶段。
2.简述数据库设计过程的各个阶段上的设计任务。
答:
需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。
概念设计阶段要做的工作不是直接将需求分析得到的数据存储格式转换为DBMS能处理的数据库模式,而是将需求分析得到的用户需求抽象为反映用户观点的概念模型。
逻辑设计的主要目标是产生一个DBMS可处理的数据模型和数据库模式。
该模型必须满足数据库的存取、一致性及运行等各方面的用户需求。
将逻辑设计中产生的数据库逻辑模型结合指定的DBMS,设计出最适合应用环境的物理结构的过程,称为数据库的物理结构设计。
根据逻辑和物理设计的结果,在计算机上建立起实际的数据库结构,并装入数据,进行试运行和评价的过程,叫做数据库的实施(或实现)。
维护工作包括以下内容:
数据库的转储和恢复;数据库的安全性和完整性控制;数据库性能的监督、分析和改造;数据库的重组织和重构造。
3.简述数据库设计的概念。
答:
数据库设计是对于给定的应用环境,在关系数据库理论的指导下,构造最优的数据库模式,在数据库管理系统上建立数据库及其应用系统,使之能有效地存储数据,满足用户的各种需求的过程。
4.简述数据库概念结构设计的方法和设计步骤。
答:
方法:
(1)自顶向下法
(2)自底向上法(3)逐步扩张法(4)混合策略
在概念结构设计时,可以分为两步。
进行数据抽象,设计局部E-R模型,即设计用户视图;集成各局部E-R模型,形成全局E-R模型,即视图的集成。
5.什么是数据库的逻辑结构设计?
试述其设计步骤。
答:
逻辑设计的主要目标是产生一个DBMS可处理的数据模型和数据库模式。
该模型必须满足数据库的存取、一致性及运行等各方面的用户需求。
其逻辑结构设计阶段一般要分为三步进行:
将E-R图转化为关系数据模型,关系模式的优化,设计用户外模式。
6.简述把E-R图转换为关系模型的转换规则。
答:
一个实体转化为一个关系模式。
实体的属性就是该关系模式的属性。
实体的主码就是该关系模式的主码。
两实体间1:
1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
两实体间1:
N联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。
同一实体间的1:
N联系可在这个实体所对应的关系模式中多设一个属性,用来作为与该实体相联系的另一个实体的主码。
两实体间M:
N联系,必须为联系产生一个新的关系模式。
该关系模式中至少包含被它所联系的双方实体的主码,若联系中有属性,也要并入该关系模式中。
同一实体间M:
N联系,必须为联系产生一个新的关系模式。
该关系模式中至少包含被它所联系的双方实体的主码,若联系有属性,也要并入该关系模式中。
由于这个“联系”只涉及一个实体,所以加入的实体的主码不能相同。
两个以上实体集之间M:
N的联系,必须为联系产生一个新的关系模式,该关系模式中至少包含被它所联系的所有实体的主码,若联系有属性,也要并入该关系模式中。
7.将图1学生信息数据库系统的E-R图转换为关系模型。
图1
习题7图
答:
课程(课程号,课程名,学分)
学生(学号,姓名,性别,年龄,班级名)
班级(班级名,班主任)
选修(学号,课程号,成绩)
8.一个图书馆理系统中有如下信息:
图书:
书号、书名、数量、位置
借书人:
借书证号、姓名、单位
出版社:
出版社名、邮编、地址、电话、E-mail
其中约定:
任何人都可以借多种书,任何一种书可以被多个人借,借书和还书时,要登记相应的借书日期和还书日期;一个出版社可以出版多种书籍,同一本书仅为一个出版社所出版,出版社名具有唯一性。
根据以上情况,完成如下设计:
(1)设计系统的E-R图;
将E-R图转换为关系模式;
(3)指出转换后的每个关系模式的主码。
答:
(1)E-R图
(2)和(3)关系模式
图书(书号,书名,数量,位置,出版社名)
借书人(借书证号,姓名,单位)
出版社(出版社名,邮编,地址,电话,E-mail)
借阅(书号,借书证号,借书日期,还书日期)
第6章习题
1.安装MicrosoftSQLServer2005系统操作。
答:
略。
2.SQLServer2005主要提供了哪些服务?
如何启动、暂停或停止SQLServer服务?
答:
服务器管理、对象资源管理、SQLServer配置管理等。
启动、暂停或停止SQLServer服务:
首先在SQLServer配置管理器的窗口左边单击“SQLServer2005服务”,此时在窗口右边会看到已安装的所有服务,可以选中某个服务,然后单击窗口上部工具栏中的相应按钮,或右击某个服务名称,在弹出的快捷菜单中选择相应的菜单选项来启动或停止服务。
3.SQLServer外围应用配置器的主要作用是什么?
答:
SQLServer外围应用配置器(SQLServerSurfaceAreaConfiguration)是SQLServer2005提供的一个新的管理工具。
通过SQLServer外围应用配置器,可以在统一集中的界面下设置各种SQLServer服务实例对外沟通的渠道,降低可能的危险。
4.简述SQLServerManagementStudio的使用。
答:
略。
5.简述对象资源管理器的功能。
答:
SQLServerManagementStudio的对象资源管理器组件是一种集成工具,可以查看和管理所有服务器类型的对象。
用户可以通过该组件操作数据库,包括新建、修改、删除数据库、表、视图等数据库对象,新建查询、设置关系图、设置系统安全、数据库复制、数据备份、
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 应用 教程 SQLServer 课后 习题 答案 详解