ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:45.34KB ,
资源ID:17913061      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17913061.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(114章《数据库原理及应用SQLServer版》 唐国良蔡中民习题参考答案Word文档格式.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

114章《数据库原理及应用SQLServer版》 唐国良蔡中民习题参考答案Word文档格式.docx

1、编译原理Android应用开发Java语言程序设计1.14 假设某商业集团数据库中有1个关系模式R(商店编号,商品编号,数量,部门编号,负责人)。如果规定: (a)每个商店的每种商品只在一个部门销售。 (b)每个商店的每个部门只有一个负责人。 (c)每个商店的每种商品只有一个库存数量。(1)写出关系模式R的基本函数依赖集(2)找出关系模式R的候选码。(3)关系模式R最高已经达到第几范式?为什么?(4)如果R不属于3NF,请将R分解成3NF。分析与解答:(1)基本的函数依赖有:(商店编号+商品编号) 部门编号(商店编号+部门编号) 负责人(商店编号+商品编号) 数量(2)由题意,上面的函数依赖可

2、知“商店编号”是主属性,商品编号也是主属性,由这两个属性,可以确定关系元组的所有属性,所以R的候选码是:商店编号+商品编号。(3)R(商店编号,商品编号,数量,部门编号,负责人) 最高已达到2NF。因为负责人是码的传递依赖。(4)要达到3NF,必须消除非主属性对码的传递依赖。对R分解后的两个模式如下:R1(商店编号,商品编号,数量,部门编号)R2(部门编号,负责人)第2章 一、填空题(1)可信任性、高效性和智能性。(2)自动、手动和禁止。(3)SQL Server Management Studio、sp_configuret 系统存储过程和SET语句。(4)系统数据库和示例数据库。(5)ma

3、ster、model、msdb和tempdb。二、简答题1、答:SQL Server有如下两种身份验证模式。(1)Windows身份验证模式:该身份验证模式是在SQL Server中建立与Windows用户账户对应的登录账号,在登录Windows后,登录SQL Server就不用再一次输入用户名和密码了。(2)混合模式(Windows身份验证和SQL Server身份验证):该身份验证模式就是在SQL Server中建立专门的账户和密码,这些账户和密码与Windows登录无关。在登录Windows后,登录SQL Server还需要输入用户名和密码。2、答:略。3、答:一是管理工具SQL Ser

4、ver Management Studio窗口中通过方便的图形化向导创建,二是通过编写Transact-SQL语句创建。第3章 一、(1)B (2)A (3)C (4)A二、(1) 1 1(2) 表、视图、索引、约束、存储过程、触发器、默认值、用户和角色、规则、类型、函数(3)利用SQL Server Management Studio创建数据库 利用T-SQL创建数据库三、答:SQL Server 2008数据库文件的分类及特点如下:(1)主数据文件。主数据文件简称主文件,正如其名字所示,该文件是数据库的关键文件,包含了数据库的启动信息,并且存储数据。每个数据库必须有且仅能有一个主文件,其默

5、认扩展名为.mdf。(2)辅助数据文件。辅助数据文件简称辅(助)文件,用于存储未包括在主文件内的其他数据。辅助文件的默认扩展名为.ndf。辅助文件是可选的,根据具体情况,可以创建多个辅助文件,也可以不使用辅助文件。一般当数据库很大时,有可能需要创建多个辅助文件。而当数据库较小时,则只需要创建主文件而不需要创建辅助文件。(3)日志文件。日志文件用于保存恢复数据库所需的事务日志信息。每个数据库至少有一个日志文件,也可以有多个,日志文件的扩展名为.ldf。日志文件的存储与数据文件不同,它包含一系列记录,这些记录的存储不以页为存储单位第4章一、选择题1.B 2.B 3.A1. 答:空值(NULL)通常

6、表示未知、不可用或将在以后添加的数据。若一个列允许为空值,则向表中输入记录值时可不为该列给出具体值。而一个列若不允许为空值,则在输入时必须给出具体值。2 .答:约束是指表中数据应满足一些强制性条件,这些条件通常由用户在设计表时指定。常用约束有非空约束(NOT NULL)、检查约束(CHECK约束)、唯一约束(UNQUE约束)、主键约束(PRIMARY KEY约束)、外键约束(FOREIGN KEY约束)五种。3. 答:Microsoft SQL Server 2008系统提供了28种数据类型。数字数据类型11种:BIGINT、INT、SMALLINT、TINYINT、BIT、DECIMAL、N

7、UMERIC、MONEY、SMALLMONEY、FLOAT和REAL。字符数据类型6种:CHAR、VARCHAR、TEXT、NCHAR、NVARCHAR和NTEXT。日期和时间数据类型2种:DATETIME和SMALLDATETIME。二进制数据类型3种:BINARY、VARBINARY和IMAGE。其他类型6种: CURSOR、SQL_VARIANT、TABLE、TIMESTAMP、UNIQUEIDENTIFIER和XML。4.答:可以通过Management Stuio界面和T-SQL语句两种方式创建数据表。第5章 1. (1)C (2)D (3)C (4)B (5)A 2. (1)搜索以

8、“张”开头,并且第二个汉字不是“华”的字符串。(2)ASC DESC ASC (3)COUNT(*) COUNT() MIN() MAX() SUM() AVG() COUNT(*)(4)UNION EXCEPT INTERSECT第6章1.答:区别:基表是数据库中存储数据的基本单位,所有的数据都存放在数据表即基表中。而视图只是由SELECT语句组成的查询定义的虚拟表,因此数据库在存储视图时只存储视图的定义,虽然与普通的表一样视图由字段和记录组成,但本身不存储数据。联系:视图中的数据是根据SELECT语句在基表中查询而获得的,一旦数据表中的数据更改则视图中的数据也会跟着更改。而如果更改视图中的

9、数据则是通过视图修改了视图所对应的基表中的数据,因此基表是视图的基础二者密不可分。2.答:视图(View)是一种虚拟数据库对象,是从用户使用数据库观点出发,为用户提供了一种从一个特定的角度来查看数据库中数据的方法。优点:简化了用户对数据的查询和处理。使用户集中视点增加数据的可读性。可以保证数据的逻辑独立性。增加了数据的安全性。3.答:(1)在视图中修改的列必须直接引用表列中的基础数据。它们不能通过其他方式派生,例如通过聚合函数(AVG、COUNT、SUM、MIN、MAX等)或者通过表达式并使用列计算出其他列的情况。使用集合运算符(UNION、UNION ALL、CROSSJOIN、EXCEPT

10、和INTERSECT)形成的列得出的计算结果不可更新。(2)被修改的列不受 GROUP BY、HAVING 或DISTINCT 子句的影响。(3)创建视图的SELECT语句的FROM子句中至少要包含一个基表。4.将创建视图的基表从数据库中删除掉,视图也会一并删除吗?答:不会。5.答:USE stu_infoGOCREATE VIEW avg_stud ASSELECT student.sname,AVG(grade.grade) AS 平均分 FROM student,gradeWHERE student.s_id=grade.s_idGROUP BY student.s_id,student

11、.sname第7章为了提高查找速度而提出的一种记录着表中一列或多列按照一定顺序建立的排序,以及与这些排序列值与记录之间的对应关系的结构。索引的类型按照组织方式来分主要是聚集索引和非聚集索引两种;按照数据的唯一性来分,可以分为唯一索引和非唯一索引两种;按照索引键的列数来分,可以分为单一索引和组合索引两种。(1)快速存取数据;(2)保证数据记录的唯一性;(3)实现表与表之间的参照完整性;(4)在使用ORDER BY、GROUP BY子句进行数据检索时,利用索引可以减少排序和分组的时间。缺点:(1)创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。(2)索引需要占物理空间,除了数据表占数

12、据空间之外,每一个索引还要占一定的物理空间,如果要建立聚簇索引,那么需要的空间就会更大。(3)当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。一个聚集索引和若干个非聚集索引。随着数据库的使用,数据不断发生变化,经过多次的增加、修改和删除等更新操作以后,索引的数据可能会分散在硬盘的各个位置,也可能将本应该存储在同一个页中的索引分散到多个页中,这样就产生了很多索引碎片。这些碎片与操作系统里的硬盘碎片一样,会影响系统性能。当碎片增多时,SQL Server的查询速度会明显降低。所以需要重建索引来整理索引碎片。方法:重新组织索引或重新生成索引两种方法。第8章习

13、题解答思考与练习答案:1(略)2(略)3、(1)USE NorthwindDECLARE price moneyDECLARE returnstr varchar(50)SELECT price = 单价 FROM 产品 WHERE 产品名称= N蕃茄酱SET returnstr = CASE WHEN price$20 THEN 蕃茄酱的单价低于20元 WHEN $20=price and price40 THEN 蕃茄酱的单价在20元与40元之间 WHEN $40=80 THEN 蕃茄酱的单价在40元与80元之间 ELSE 蕃茄酱的单价大于80元 ENDPRINT returnstr(2)

14、IF price$20 GOTO print20 -跳转到标签print20IF $2040 GOTO print40 -跳转到标签print40IF $402001 BEGIN set execstr = SELECT * FROM 订单 WHERE YEAR(订购日期)= +CAST(year AS varchar(4) -将查询语句放在一个变量中 EXEC (execstr) -执行变量中的查询语句-当该年的订单数不为零时将查询出来的记录插入到一个新表中 IF ROWCOUNT 0 -执行括号里的T-SQL语句 EXECUTE (SELECT * INTO 订单_+year + FROM

15、 订单 WHERE YEAR(订购日期)=+year) SET year = year - 1第9章存储过程是一种数据库对象,是为了实现某个特定任务的一组T-SQL语句和可选控制流语句的预编译集合,这些语句在一个名称下存储并作为一个单元进行处理。存储过程在第一次执行时进行编译,然后将编译好的代码保存在高速缓存中供以后调用,以提高代码的执行效率。2. 答:执行触发器的时候,系统会产生两个临时表。插入表inserted表里存放的是更新前的记录:对于插入记录操作来说,inserted表里存放的是要插入的数据;对于更新记录操作来说,inserted表里存放的是要更新的记录。deleted表里存放的是更

16、新后的记录:对于更新记录操作来说,deleted表里存放的是更新前的记录(更新完后即被删除);对于删除记录操作来说,deleted表里存入的是被删除的旧记录。触发器可以分为两大类:DML触发器和DDL触发器。DML(数据操纵语言)触发器是在数据库服务器中发生数据操作语言事件时执行的存储过程。DML触发器是在执行一个Insert、Update或Delete语句时触发。DML触发器又分为两类,After触发器和Instead Of触发器。DDL(数据定义语言)触发器是在响应数据定义语言事件时执行的存储过程。DDL触发器一般用于执行数据库中的管理任务,例如审核和规范数据库操作、防止数据库表结构被修改

17、等。4. (1)CREATE PROCEDURE Sel_grade snochar(10),cno char(3)ASSELECT gradeFROM gradeWHERE s_id=sno AND c_id=cnoCREATE PROCEDURE Sel_Course sdepnvarchar(10)ASSELECT sdepartment,c_id,COUNT(*)AS 人数FROM student,gradeWHERE sdepartment=sdep AND student.s_id=grade.s_idGROUP BY sdepartment,c_idORDER BY sdepar

18、tment(3)CREATE PROCEDURE Sel_Stu kcnamenvarchar(10)ASSELECT cname,course.c_id,COUNT(*)AS 人数,AVG(grade) AS 平均分FROM course,gradeWHERE cname=kcname AND course.c_id=grade.c_idGROUP BY cname,course.c_id(4)CREATE TRIGGER sc_ins_60 ON grade AFTER INSERTASBEGINIF (SELECT COUNT(*)FROM grade WHERE c_id=(SELEC

19、T c_id FROM inserted)60该课程选课人数已满!请另选其他课程。 ROLLBACK END(5)CREATE TRIGGER Ins_Up_100 ON student AFTER INSERT,UPDATEIF (SELECT COUNT(*)FROM student WHERE sdepartment=(SELECT sdepartment FROM inserted)100该系人数已满! ROLLBACK(6)CREATE TRIGGER Del_s_sc ON student AFTER DELETEDELETE FROM gradeWHERE s_idIN(SELE

20、CT s_id FROM deleted)(7)CREATE TRIGGER Del_database ON ALL SERVERAFTER DROP_DATABASEIF EXISTS (SELECT name FROM sys.database WHERE name=Nstu_info)DROP DATABASE stu_infoPRINT 不允许删除数据库stu_infoROLLBACK第10章(1)D;(2);(3)B二、填空题(1)对称加密和非对称加密(2)数据库、架构和服务器(3)账户(4)数据库中预定义的“固定数据库角色”、用户可以创建的“灵活数据库角色”和Public角色三、简

21、答题(1)简述安全主体的定义和内容。一个请求服务器、数据库或架构资源的实体称为安全主体。每一个安全主体都有唯一的安全标识符(Security Identifier,SID)。安全主体在3个级别上管理:Windows、SQL Server和数据库。安全主体的级别决定了安全主体的影响范围。(2)对称加密和非对称加密有什么区别。最常使用的有两种加密方式:对称加密和非对称加密。对称加密使用相同的密钥加密和解密数据,使用的算法相对于非对称加密的算法比较简单。非对称加密使用两个具有数学关系的不同密钥加密和解密数据。这两密钥分别称为私钥和公钥,它们合称为密钥对。非对称加密被认为比对称加密更安全,因为数据的加

22、密密钥与解密密钥不同。(3)Windows身份和混合安全身份两种验证模式有何区别、联系。当使用Windows身份验证连接到SQL Server时,Windows将完全负责对客户端进行身份验证。在这种情况下,将按其Windows用户账户来识别客户端。当用户通过Windows用户账户进行连接时,SQL Server使用Windows操作系统中的信息验证账户名和密码。使用混合安全模式时,SQL Server 2008首先确定用户的连接是否使用有效的SQL Server用户账户登录。如果是用户有有效的登录和正确的密码,则接受用户的连接;如果用户有效的登录,但是使用了不正确的密码,则用户的连接被拒绝。仅

23、当用户没有有效的登录时,SQL Server2008才检查Windows账户的信息。在这样的情况下,SQL Server2008确定Windows账户是否有连接到服务器的权限。如果账户有权限,连接被接受;否则,连接被拒绝。(4)服务器角色包括哪些内容。服务器级角色的权限作用域为服务器范围,包括sysadmin、serveradmin、securityadmin、processadmin、setupadmin、bulkadmin、diskadmin、dbcreator和public等角色。(5)在数据库中默认的数据库用户有哪些。默认的数据库用户有:dbo用户、guest用户和sys用户等(6)在

24、SQL Server实现透明数据加密,需要的步骤有哪些。需要的步骤如下:(a)建立主要密钥;(b)建立或取得受到主要密钥保护的凭证,也称作证书;(c)建立数据库加密密钥,并使用证书保护它;(d)设定数据库使用加密。第11章1. 简述SQL Server 2008中的数据导入导出概念。Microsoft SQL Server 允许在SQL Server表和数据文件之间大容量导入和导出大容量数据,这对在SQL Server 和异类数据源之间有效传输数据是非常重要的。“大容量导出”是指将数据从SQL Server表导出到数据文件,“大容量导入”是指将数据从数据文件加载到SQL Server表。例如,

25、您可以将数据从Microsoft Excel 应用程序导出到数据文件,然后将这些数据大容量导入到SQL Server表中。2.简述SQL Server2 008中可以使用的数据导入导出方法有哪些?数据导入导出功能,有使用Transact-SQL方式、图形界面方式、BCP命令和在SQL语句中执行xp_cmdshell方式等。第12章12.1解释下列术语:并发操作:多个用户或应用程序可能同时对数据库的同一数据对象进行读写操作,这种现象称为对数据库的并发操作。事务:事务是作为单个逻辑工作单元执行的一系列操作。一个逻辑工作单元必须有四个属性,即原子性、一致性、隔离性和持久性,简称ACID属性,只有这样

26、才能成为一个事务。数据库一致性状态:是指数据库中只包含成功事务提交的结果的状态。封锁:封锁是使事务对它要操作的数据有一定的控制能力。封锁具有3个环节:第一个环节是申请加锁,即事务在操作前要对它欲使用的数据提出加锁请求;第二个环节是获得锁,即当条件成熟时,系统允许事务对数据加锁,从而事务获得数据的控制权;第三个环节是释放锁,即完成操作后事务放弃数据的控制权。排它锁:排它锁也称为独占锁或写锁。一旦事务T对数据对象A加上排它锁(X锁),则只允许T读取和修改A,其它任何事务既不能读取和修改A,也不能再对A加任何类型的锁,直到T释放A上的锁为止。共享锁:共享锁又称读锁。如果事务T对数据对象A加上共享锁(S锁),其它事务对A只能再加S锁,不能加X锁,直到事务T释放A上的S锁为止。活锁:如果事务T1封锁了数据R,T2事务又请求封锁R,于是T2等待。T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的要求,T2仍然等待。然后T4又请求封锁R,当T3释放

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1