SQL习题参考答案文档格式.docx
《SQL习题参考答案文档格式.docx》由会员分享,可在线阅读,更多相关《SQL习题参考答案文档格式.docx(57页珍藏版)》请在冰点文库上搜索。
一、问答题
1.定义并解释术语:
①实体:
现实世界中存在的可以相互区分的事物或概念称为实体。
②实体型:
现实世界中,对具有相同性质、服从相同规则的一类事物(或概念,即实体)的抽象称为实体型。
实体型是实体集数据化的结果,实体型中的每一个具体的事物(实体)为它的实例。
③实体集:
具有相同特征或能用同样特征描述的实体的集合称为实体集。
④属性:
属性为实体的某一方面特征的抽象表示。
如学生,可以通过学生的“姓名”、“学号”、“性别”、“年龄”及“政治面貌”等特征来描述,此时,“姓名”、“学号”、“性别”、“年龄”及“政治面貌”等就是学生的属性。
⑤码:
码也称关键字,它能够惟一标识一个实体。
⑥实体联系图(E-R图):
实体-联系方法(Entity-RelationshipApproach,即E-R图法)是用来描述现实世界中概念模型的一种著名方法。
E-R图法提供了表示实体集、属性和联系的方法。
⑦数据模型:
数据模型是一组严格定义的概念集合。
这些概念精确地描述了系统的数据结构、数据操作和数据完整性约束条件。
2.试述数据模型的概念、数据模型的作用和数据模型的三个要素。
数据模型是一组严格定义的概念集合,这些概念精确地描述了系统的数据结构、数据操作和数据完整性约束条件。
数据模型是通过概念模型数据化处理得到的。
数据库是根据数据模型建立的因而数据模型是数据库系统的基础。
数据模型的三要素是数据结构、数据操作和完整性约束条件。
其中:
数据结构是所研究的对象类型的集合,它包括数据的内部组成和对外联系;
数据操作是指对数据库中各种数据对象允许执行的操作集合,它包括操作对象和有关的操作规则两部分内容;
数据约束条件是一组数据完整性规则的集合,它是数据模型中的数据及其联系所具有的制约和依存规则。
3.试述概念模型的作用。
概念模型也称信息模型,它是对信息世界的管理对象、属性及联系等信息的描述形式。
概念模型不依赖计算机及DBMS,它是现实世界的真实而全面的反映。
概念模型通过系统需求分析得到,对概念模型数据化处理后就得到了数据库的数据模型。
4.试给出三个实际部门的E-R图,要求实体型之间具有一对一,一对多,多对多各种不同的联系。
图中:
一个部门有一个负责人,一个负责人负责一个部门的工作,部门和负责人间的联系是一对一的联系;
一个学生可以借阅多本书,一本书只能一个人借。
学生和借阅间的
联系为一对多的联系;
一个学生可以参加多个社会团体,一个社会团体有多个学生参加,学生和社会团体间的联系为多对多的联系。
5.试述数据库概念结构设计的重要性和设计步骤。
重要性:
数据库概念设计是整个数据库设计的关键,将在需求分析阶段所得到的应用需求首先抽象为概念结构,以此作为各种数据模型的共同基础,从而能更好地、更准确地用某一DBMS实现这些需求。
设计步骤:
概念结构的设计方法有多种,其中最经常采用的策略是自底向上方法,该方法的设计步骤通常分为两步:
第1步是抽象数据并设计局部视图,第2步是集成局部视图,得到全局的概念结构。
6.什么是E-R图?
构成E-R图的基本要素是什么?
E-R图为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。
构成E-R图的基本要素是实体型、属性和联系,其表示方法为:
(1)实体型,用矩形表示,矩形框内写明实体名;
(2)属性,用椭圆形表示,并用无向边将其与相应的实体连接起来;
(3)联系,用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:
1,1:
n或m:
n)。
1.下述哪一条不属于概念模型应具备的性质__AD_____。
A.有丰富的语义表达能力B.易于交流和理解C.易于变动D.在计算机中实现的效率高
2.用二维表结构表示实体以及实体间联系的数据模型称为___C_____。
A.网状模型B.层次模型C.关系模型D.面向对象模型
3.一台机器可以加工多种零件,每一种零件可以在多台机器上加工,机器和零件之间为___C_____的联系。
A.1对1B.1对多C.多对多D.多对1
第3章逻辑模型设计
一、填空题
1.关系数据库是以(数据的关系模型)为基础设计的数据库,利用(关系模式)描述现实世界。
一个关系既可以描述(实体),也可以描述(实体间的联系)。
2.在关系数据库中,二维表称为一个(关系),表的每一行称为(记录),表的每一列称为(字段或属性)。
3.数据完整性约束分为(实体完整性)、(参照完整性)和(用户定义的完整性)。
1.设属性A是关系R的主属性,则属性A不能取空值(NULL)。
这是___A____。
A.实体完整性规则B.参照完整性规则C.用户定义完整性规则D.域完整性规则
2.下面对于关系的叙述中,哪个是不正确的?
C
A.关系中的每个属性是不可分解的B.在关系中元组的顺序是无关紧要的
C.任意的一个二维表都是一个关系D.每一个关系只有一种记录类型
3.一台机器可以加工多种零件,每一种零件可以在多台机器上加工,机器和零件之间为__C___的联系。
A.
1对1B.
1对多C.多对多D.多对1
4.下面有关E-R模型向关系模型转换的叙述中,不正确的是__C___。
A.一个实体类型转换为一个关系模式
B.一个1:
1联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并
C.一个1:
n联系可以转换为一个独立的关系模式,也可以与联系的任意一端实体所对应的关系模式合并
D.一个m:
n联系转换为一个关系模式
三、问答题
1.定义并解释下列术语,说明它们之间的联系与区别:
1)主码、候选码、外码。
若关系中的某一属性组(或单个属性)的值能惟一地标识一个元组,则称该属性组(或属性)为候选码。
为数据管理方便,当一个关系有多个候选码时,应选定其中的一个候选码为主码。
当然,如果关系中只有一个候选码,这个惟一的候选码就是主码。
设F是基本关系R的一个或一组属性,但不是关系R的主码(或候选码)。
如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码(ForeignKey),并称基本关系R为参照关系(ReferencingRelation),基本关系S为被参照关系(ReferencedRelation)或目标关系(TargetRelation)。
2)迪卡尔积、关系、元组、属性、域。
给定一组域D1,D2,…,Dn.这些域中可以有相同的部分,则D1,D2,…,Dn的笛卡地积为:
D1×
D2×
…×
Dn﹦{(dl,d2,…,dn)∣di∈Di,i=1,2,…,n}。
Dn的子集称作在域D1,D2,…,Dn上的关系,表示为:
R(D1,D2,…,Dn)。
其中,R表示关系的名字,n是关系的目。
笛卡儿积集合中的每一个元素(dl,d2,…,dn)称为一个元组。
关系中的每一列称为一个属性。
域为数据集合,属性值来源于域。
3)关系、关系模式、关系数据库。
关系是留卡儿积的有限子集,所以关系也是一个二维表。
关系的描述称为关系模式。
关系模式可以形式化地表示为:
R(U,D,Dom,F)。
其中R为关系名,它是关系的形式化表示;
U为组成该关系的属性集合;
D为属性组U中属性所来自的域;
Dom为属性向域的映像的集合;
F为属性问数据的依赖关系集合。
在某一应用领域中,所有实体集及实体之间联系所形成关系的集合就构成了一个关系数据库。
2.试述关系模型的完整性规则。
在参照完整性中,为什么外码属性的值也可以为空?
什么情况下才可以为空?
关系模型中有三类完整性约束:
实体完整性、参照完整性和用户定义的完整性。
关系的实体完整性规则为:
若属性A是基本关系R的主属性,则属性A的值不能为空值。
关系的参照完整性规则为:
若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对干R中每个元组在F上的值必须取空值(F的每个属性值均为空值)或者等于S中某个元组的主码值。
用户定义的完整性就是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。
由于外码在被参考关系A中,是非主属性,其值为空,不影响关系的实体完整性。
当外码值不清楚或不确定时,可以设为空值,此时参照表中没有对应的记录与之匹配。
3.仅满足1NF的关系存在哪些操作异常?
是什么原因引起的?
仅满足1NF的关系模式存在数据更新造成不一致、数据插入异常和删除异常问题。
是因为没有对关系模式进行规范化,数据冗余大而造成。
四、设计题
1.某学校有系、教师、学生和课程等基本对象组成,每个系有一位系主任和多位教师,一个教师仅在一个系任职;
每个系需要开设多门不同的课程,一门课程也可在不同的系开设;
一门课程由一位到多位教师授课,一个教师可以授0到多门课程;
一个学生可以在不同的系选修多门课程,一门课程可以被多个学生选修。
假定系的基本数据项有系编号、系名,位置;
课程的基本数据项有课程号,课程名称,开课学期,学分;
学生的基本数据项有学号,姓名、性别;
教师有教师编号,教师姓名,职称等数据项。
请设计该学校的概念模型
为简化起见,各实体的属性表示如下:
系:
系编号,系名,位置
课程:
课程号,课程名称,开课学期,学分
学生:
学号,姓名,性别
教师:
教师编号,教师姓名,职称
关系模型为:
系(系编号,系名,位置);
课程(课程号,课程名称,开课学期,学分);
学生(学号,姓名,性别);
教师(教师编号,教师姓名,职称,系编号,系主任编号)
选课(学号,课程号);
授课(教师编号,课程号);
开设(系编号,课程号)。
2.某超市公司下属有若干个连锁商店,每个商店经营若干商品,每个商店有若干职工,但每个职工只能在一个商店工作。
设实体“商店”的属性有:
商店编号,店名,店址,店经理。
实体“商品”的属性有:
商品编号,商品名,单价,产地。
实体“职工”的属性有:
职工编号,职工名,性别,工资。
试画出反映商店、商品、职工实体及其联系类型的E-R图,要求在联系中应反映出职工参加某个商店工作的起止时间,商店销售商品的月销售量,并将你设计的E-R图转换为相应的关系模型。
答:
E-R图为:
各个实体的属性说明如下:
“商店”的属性有:
商店编号,店名,店址,店经理
“商品”的属性有:
商品编号,商品名,单价,产地
“职工”的属性有:
职工编号,职工名,性别,工资
考虑到商店是一种连锁商店,属于超市公司下面,因此一种商品可能在多个连锁商店经营,因此,确定商店与商品之间的联系为:
m:
n.
商店(商店编号,店名,店址,店经理);
商品(商品编号,商品名,单价,产地);
职工(职工编号,职工名,性别,工资,商店编号,开始工作时间,结束工作时间);
经营(商店编号,商品编号,月销售量)。
3.设某网站开设虚拟主机业务,需要设计一个关系数据库进行管理。
网站有多名职工,参与主机的管理、维护与销售。
一个职工(销售员)可销售多台主机,一台主机只能被一个销售员销售。
一个职工(维护员)可以维护多台主机,一台主机可以被多个维护员维护;
一个管理员可管理多台主机,一台主机只能由一个管理员管理。
主机与客户单位及销售员之间存在租用关系,其中主机与个客户单位是多对多的,即一台主机可分配给多个客户单位,一个客户单位可租用多台主机。
每次租用由一位销售员经手。
假设职工有职工号、姓名、性别、出生年月、职称、密码等属性,主机有主机序号、操作系统、生产厂商、状态、空间数量、备注等属性,客户单位有单位名称、联系人姓名、联系电话等属性。
试画出E-R图并将E-R图转换为相应的关系模型。
职工号、姓名、性别、出生年月、工作类别、职称、密码;
“主机”的属性有:
主机序号、操作系统、生产厂商、状态、空间数量、备注;
“用户单位”的属性有:
单位名称、联系人姓名、联系电话。
说明:
为了区分不同类别的职工,即明确”职工号”是管理员、销售员还是维护员的“职工号”,特意在职工实体中加上属性“工作类别”。
也可以用超类与子类的方法解决。
“维护”与“销售/租用
”联系加入了联系相应的属性。
关系模型:
职工(职工号,姓名,性别,出生年月,工作类别,职称,密码);
主机(主机序号,操作系统,生产厂商,状态,空间数量,备注,职工号);
用户单位(单位名称,联系人姓名,联系电话);
维护(职工号,主机序号,日期,备注);
租用(单位名称,主机序号,职工号,起始时间,终止时间,租用空间)。
4.请设计一个图书馆数据库,此数据库中对每个借阅者保存记录,包括:
读者号,姓名,地址,性别,年龄,单位。
对每本书保存有:
书号,书名,作者,出版社。
对每本被借出的书保存有借出日期和应还日期。
要求:
给出该图书馆数据库的E-R图,再将其转换为关系模型。
E-R图为
读者(读者号,姓名,地址,性别,年龄,单位);
书(书号,书名,作者,出版社);
借书(读者号,书号,借出日期,应还日期)。
5.图3-9是某个教务管理数据库的E-R图,请把它们转换为关系模型(图中关系、属性和联系的含义,已在它旁边用汉字标出)。
z
答:
关系模式为:
学生(学号,姓名,班级,年龄);
教师(教师编号,姓名,系名,教研室);
课程(课程号,课程名,学分);
教学(教师编号,学号);
授课(教师编号,课程号);
选修(学号,课程号,成绩)。
第4章SQLServer2008的使用环境
1.查询编辑器是一个自由格式的文本编辑器,主要用来编辑与运行Transact-SQL命令。
2.__数据库引擎(SQLServerDatabaseEngine,SSDE)___是SQLServer2008系统的核心服务。
3.SqlServerConfigurationManager称为SQLServer_配置管理器____。
4.SSMS是一个集成环境,是SQLServer2008最重要的图形界面管理工具。
5.对象资源管理器以_树型结构显示和管理服务器中的对象节点。
6.在SQLServer2008中,主数据文件的后缀是_.mdf__,日志数据文件的后缀是___.ldf______。
7.每个文件组可以有___多_____个日志文件。
二、单项选择题
1.SQLServer配置管理器不能设置的一项是(C)。
A.启用服务器协议B.禁用服务器协议C.删除已有的端口D.更改侦听的IP地址
2.(B)不是SQLServer2008服务器可以使用的网络协议。
A.SharedMemory协议B.PCI/TPC.VIA协议D.NamedPipes协议
3.(D)不是SQLServer错误和使用情况报告工具所具有的功能。
A.将组件的错误报告发送给Microsoft公司B.将实例的错误报告发送给Microsoft公司
C.将实例的运行情况发送给Microsoft公司D.将用户的报表与分析发送给Microsoft公司
4.(C)不是“查询编辑器”工具栏中包含的工具按钮。
A.调试B.更改连接C.更改文本颜色D.分析
5.通过“对象资源管理器”窗口不能连接到的服务类型是(A)。
A.查询服务B.集成服务C.报表服务D.分析服务
三、简答题
1.SQLServer2008数据库管理系统产品分为哪几个版本,各有什么特点?
SQLServer2008数据库管理系统产品的服务器版本包括了企业版和标准版,专业版本主要包括以下版本:
工作组版(Workgroup)、开发人员版(Developer)、免费精简版(Express)、Web版,以及免费的集成数据库SQLServerCompact3.5。
2.SQLServer2008系统的体系结构包含哪几个组成部分,其功能各是什么?
SQLServer2008的体系结构是对SQLServer的组成部分和这些组成部分之间的描述。
MicrosoftSQLServer2008系统由4个组件组成,这4个组件被称为4个服务,分别是数据库引擎、AnalysisServices、ReportingServices和IntegrationServices。
数据库引擎是MicrosoftSQLServer2008系统的核心服务,负责完成数据的存储、处理、查询和安全管理等操作。
分析服务(SQLServerAnalysisServices,简称为SSAS)的主要作用是提供多维分析和数据挖掘功能。
报表服务(SQLServerReportingServices,简称为SSRS)为用户提供了支持Web方式的企业级报表功能。
集成服务(SQLServerIntegrationServices,简称SSIS)是一个数据集成平台,负责完成有关数据的提取、转换和加载等操作。
3.简述SQLServer2008系统中主要数据库对象的特点。
主要的数据库对象包括数据库关系图、表、视图、同义词、存储过程、函数、触发器、程序集、类型、规则和默认值等。
“表”节点中包含了数据库最基本、最重要的对象——表。
表实际用来存储系统数据和用户数据,是最核心的数据库对象。
“视图”节点包含了数据库中的视图对象。
视图是一种虚拟表,用来查看数据库中的一个或多个表,视图是建立在表基础之上的数据库对象,它主要以SELECT语句形式存在。
在“同义词”节点中包含了数据库中的同义词对象。
这是MicrosoftSQLServer2008系统新增的一种对象。
“可编程性”对象是一个逻辑组合,它包括存储过程、函数、触发器、程序集、类型、规则和默认值等对象。
数据库中的函数对象包含在“函数”节点中。
函数是接受参数、执行复杂操作并将结果以值的形式返回的例程。
4.SQLServer2008支持哪两种身份验证?
Windows身份验证或混合模式身份验证。
5.如何注册和启动SQLServer服务器?
1.注册服务器
使用MicrosoftSQLServerManagementStudio工具注册服务器的步骤如下:
(1)启动MicrosoftSQLServerManagementStudio工具,选择“视图”|“已注册”命令或者按下快捷键Ctrl+Alt+G,在打开的“已注册的服务器”窗口中选中“数据库引擎”图标。
(2)在“数据库引擎”上单击鼠标右键,从弹出的快捷菜单中选择“新建”|“服务器注册”命令,即可打开如图1-20所示的“新建服务器注册”对话框。
选择“常规”选项卡,可以在该选项卡中输入将要注册的服务器名称。
(3)选择“连接属性”选项卡,如图1-21所示,在该选项卡中可以设置连接到的数据库、网络以及其他连接属性。
(4)然后单击“测试”按钮,可以对当前设置的连接属性进行测试。
如果出现如图1-23所示的“新建服务器注册”消息框,则表示连接属性的设置是正确的。
(5)完成连接属性设置后,单击“保存”按钮,即可完成连接属性的设置操作。
接着单击“保存”按钮,即可完成新建服务器注册的操作。
新注册的服务器名称将出现在列表中。
2.启动服务器
可以通过“开始”菜单来启动SQLServerConfigurationManager。
第5章数据库的创建与管理
1.在MicrosoftSQLServer2008中,主数据文件的后缀是__.mdf_____,日志数据文件的后缀是__.ldf_____,每个文件组可以有___多____个日志文件。
2.通过T-SQL语句,使用__CREATEDATABASE_______命令创建数据库,使用__sp_helpdb_命令查看数据库定义信息,使用___ALTERDATABASE___命令修改数据库结构,使用__DROPDATABASE_________命令删除数据库。
1.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句ALTERDATABASE实现哪类功能___C___。
A.数据查询B.数据操纵C.数据定义D.数据控制
2.SQLServer数据库对象中最基本的是___B___。
A.表和语句B.表和视图C.文件和文件组D.用户和视图
3.事务日志用于保存___C___。
A.程序运行过程B.程序的执行结果C.对数据的更新操作D.数据操作
4.分离数据库就是将数据库从___B___中删除,但是保持组成该数据的数据文件和事务日志文件中的数据完好无损。
A.WindowsB.SQLServer2008C.U盘D.查询编辑器
1.简述数据库物理设计的内容和步骤。
数据库在物理设备上的存储结构与存取方法称为数据库的物理