9数据库原理与应用教程—SQL Server数据库

上传人:m**** 文档编号:178872268 上传时间:2022-12-30 格式:DOCX 页数:8 大小:24.70KB
收藏 版权申诉 举报 下载
9数据库原理与应用教程—SQL Server数据库_第1页
第1页 / 共8页
9数据库原理与应用教程—SQL Server数据库_第2页
第2页 / 共8页
9数据库原理与应用教程—SQL Server数据库_第3页
第3页 / 共8页
资源描述:

《9数据库原理与应用教程—SQL Server数据库》由会员分享,可在线阅读,更多相关《9数据库原理与应用教程—SQL Server数据库(8页珍藏版)》请在装配图网上搜索。

1、数据库原理与应用教程SQL Server10.3 习题1引入视图的主要目的是什么? 答:数据库的基本表是按照数据库设计人员的观点设计的,并不一定符合用户的需求。 SQL Server 2005 可以根据用户需求重新定义表的数据结构,这种数据结构就是视图。 视图是关系数据库系统提供给用户以多种角度观察数据库中数据的重要机制,其结构和 数据是建立在对表的查询基础上的。2当删除视图时所对应的数据表会删除吗?答:不会。3简述视图的优点。 答:使用视图有很多优点,主要表现在:(1)为用户集中数据,简化用户的数据查询和处理。(2)保证数据的逻辑独立性。(3)重新定制数据,使得数据便于共享;合并分割数据,有

2、利于数据输出到应用程 序中。(4)数据保密。4可更新视图必须满足哪些条件?答:(1)任何修改(包括UPDATE、INSERT和DELETE语句)都只能引用一个基本表 的列。(2)视图中被修改的列必须直接引用表列中的基础数据。不能通过任何其他方式对 这些列进行派生,如通过聚合函数、计算(如表达式计算)、集合运算等。(3)被修改的列不受GROUP BY、HAVING、DISTINCT或TOP子句的影响。 5创建索引的必要性和作用是什么?答:数据库的索引就类似于书籍的目录,如果想快速查找而不是逐页查找指定的内容, 可以通过目录中章节的页号找到其对应的内容。类似地,索引通过记录表中的关键值指 向表中的

3、记录,这样数据库引擎就不用扫描整个表而定位到相关的记录。相反,如果没 有索引,则会导致SQL Server搜索表中的所有记录,以获取匹配结果。索引的优点包括:(1)大大加快数据的检索速度,这是创建索引的最主要的原因。(2)创建唯一性索引,保证表中每一行数据的唯一性。(3)加速表和表之间的连接。(4)在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排 序的时间。(5)查询优化器可以提高系统的性能,但它是依靠索引起作用的。 6聚集索引和非聚集索引有何异同?答:聚集索引会对表和视图进行物理排序,所以这种索引对查询非常有效,在表和视图 中只能有一个聚集索引。非聚集索引不会对表和视图进行

4、物理排序。如果表中不存在聚 集索引,则表是未排序的。7在 SQL Server Management Studio 中创建一个仓库库存信息视图,要求包含仓库库存 数据库中三个表的所有列。答:略。8. 利用T-SQL语句创建一个查询每个学生的平均成绩的视图,要求包含学生的学生号 和姓名。答:CREATE VIEW 学生_平均成绩ASSELECT学生学生号,姓名,avg(成绩)AS平均成绩FROM 学生,选课WHERE学生.学生号=选课.学生号GROUP BY学生.学生号,姓名9. 在SQL Server Management Studio中按照选课表的成绩列升序创建一个普通索引(非 唯一、非聚集

5、)。答:略。10. 利用T-SQL语句按照商品表的单价列降序创建一个普通索引。 答:CREATE INDEX index 品单价 ON 商品(单价 DESC)11.4 习题1. 简述存储过程和触发器的优点。 答:存储过程最主要的特色是当写完一个存储过程后即被翻译成可执行码存储在系统表 内,当作是数据库的对象之一,一般用户只要执行存储过程,并且提供存储过程所需的 参数就可以得到所要的结果而不必再去编辑T-SQL命令。由于在触发器中可以包含复杂的处理逻辑,因此,应该将触发器用来保持低级的数 据的完整性,而不是返回大量的查询结果。使用触发器主要可以实现以下操作:(1) 强制比CHECK约束更复杂的数

6、据的完整性(2) 使用自定义的错误提示信息(3) 实现数据库中多张表的级联修改(4) 比较数据库修改前后数据的状态(5) 调用更多的存储过程(6) 维护非规范化数据2. 简述游标的概念及类型。答:游标是处理数据的一种方法,它允许应用程序对查询语句 SELECT 返回的结果集 中每一行进行相同或不同的操作,而不是一次对整个结果集进行同一种操作。为了查看 或者处理结果集中的数据,游标提供了在结果集中一次以行或者多行前进或向后浏览数 据的能力,我们可以把游标当作一个指针,它可以指定结果中的任何位置,然后允许用 户对指定位置的数据进行处理。SQL Server支持三种类型的游标:T-SQL游标,API

7、服务器游标和客户游标。由于 API 游标和 T-SQL 游标使用在服务器端,所以被称为服务器游标,也被称为 后台游标,而客户端游标被称为前台游标。服务器游标包含以下四种:静态游标、动态 游标、只进游标、键集驱动游标。3 .简述SQL Server2005中存储过程和触发器的分类。 答:存储过程分为系统存储过程、本地存储过程、临时存储过程、远程存储过程和扩展 存储过程。触发器:DML触发器是当数据库服务器中发生数据操作语言(DML)事件时会自动 执行的存储过程。DDL触发器是在响应数据定义语言(DDL)语句时触发,一般用于 数据库中执行管理任务。4. 创建存储过程,从课程表中返回指定的课程的信息

8、。该存储过程对传递的参数进行 模式匹配,如果没有提供参数,则返回所有课程的信息。答: CREATE PROCEDURE Pcoursename varchar(20) = %ASSELECT * FROM 课程WHERE 课程名 LIKE name5. 创建存储过程,计算指定学生(姓名)的总成绩,存储过程中使用一个输入参数(姓 名)和一个输出参数(总成绩)。答: CREATE PROCEDURE Sname S_n varchar(20), sum1 int OUTPUTASSELECT suml= sum(成绩)FROM 选课,学生WHERE姓名=S_n and学生.学生号=选课.学生号6.

9、 为dept表创建一个实现级联删除的触发器,当执行删除时,激活该触发器同时删除 gongcheng表中相应记录(leader列)。答: CREATE TRIGGER d_tr ON deptFOR deleteASdelete from gongcheng where leader=(SELECT leader FROM deleted)7. 在教学库中建一个学生党费表,属性(学生号,姓名,党费),学生号是主键,也是 外键(参考学生表的学生号);创建一个触发器,保证只能在每年的6月和12月交党费, 如果在其它时间录入则显示提示信息。答: CREATE TABLE 学生党费表(学生号 CHAR(

10、 7) primary key foreign key references 学生(学生号),姓名 char(6),党费 int)CREATE TRIGGER輕_学生党费表on 学生党费表 for insertASif not(datepart(mm,getdate()=06 or datepart(mm,getdate()=12)BEGINprint对不起,只能在每年的6月和12月交党费rollbackEND8利用T-SQL扩展方式声明一个游标,查询学生表中所有男生的信息,并读取数据。 要求:(1)读取最后一条记录。(2)读取第一条记录。(3)读取第 5 条记录。(4)读取当前记 录指针位置

11、后第3 条记录。答:略。12.5 习题1什么是事务?如果要提交或取消一个事务,使用什么语句? 答:事务处理是数据库的主要工作,事务由一系列的数据操作组成,是数据库应用程序 的基本逻辑单元,用来保证数据的一致性。提交或取消一个事务:COMMIT TRANSACTION 或 ROLLBACK TRANSACTION 语句。2事务分为哪几类?答:根据系统的设置,SQL Server 2005将事务分为两种类型:系统提供的事务和用户 定义的事务。根据运行模式的不同, SQL Server 2005将事务分为4种类型:显示事务、隐式事 务、自动提交事务和批处理级事务。3简述事务回滚机制。答:(1)如果不

12、指定回滚的事务名称或保存点,则ROLLBACK TRANSACTION命令会 将事务回滚到事务的起点。(2)在嵌套事务时,该语句将所有内层事务回滚到最远的BEGIN TRANSACTION语 句,transaction_name也只能是来自最远的BEGIN TRANSACTION语句的名称。在执行COMMIT TRANSACTION语句后不能回滚事务。(4) 如果在触发器中发出ROLLBACK TRANSACITON命令,将回滚对当前事务中 所做的所有数据修改,包括触发器所做的修改。(5) 事务在执行过程中出现任何错误,SQL Server都将自动回滚事务。 4简述锁机制,锁分为哪几类。答:锁

13、是防止其他事务访问指定的资源、实现并发控制的一种手段,是多个用户能够同 时操纵同一个数据库中的数据而不发生数据不一致现象的重要保障。锁分为共享锁(Shared Lock) (2)排它锁(Exclusive Lock) (3)更新锁(Update Lock)(4)意向锁(Intent Lock)(5)模式锁(Schema Lock)(6)大容量更新锁(Bulk Update Lock)5分析各类锁之间的兼容性。 在一个事务已经对某个对象锁定的情况下,另一个事务请求对同一个对象的锁定,此时 就会出现锁定兼容性问题。当两种锁定方式兼容时,可以同意对该对象的第二个锁定请 求。如果请求的锁定方式与已挂起

14、的锁定方式不兼容,那么就不能同意第二个锁定请求。 相反,请求要等到第一个事务释放其锁定,并且释放所有其他现有的不兼容锁定为止 详细内容见书表 12-1 。6简述死锁及其解决办法。 答:产生死锁的情况一般包括以下两种: 第一种情况,当两个事务分别锁定了两个单独的对象,这时每一个事务都要求在另 外一个事务锁定的对象上获得一个锁,因此每一个事务都必须等待另外一个事务释放占 有的锁,这时,就发生了死锁。这种死锁是最典型的死锁形式。第二种情况,当在一个数据库中时,有若干个长时间运行的事务执行并行的操作 当查询分析器处理一种非常复杂的查询例如连接查询时,那么由于不能控制处理的顺 序,有可能发生死锁现象。在

15、数据库中解决死锁常用的方法有:(1) 要求每个事务一次就将要使用的数据全部加锁,否则就不能继续执行。(2) 允许死锁发生,系统来用某些方式诊断当前系统中是否有死锁发生。7创建一个事务,将所有女生的考试成绩都加5分,并提交。BEGIN TRANSACTIONUSE 教学库UPDATE 选课SET 成绩=成绩+5WHERE 学生号 in (SELECT 学生号 FROM 学生 WHERE 性别=女) COMMIT TRANSACTION8. 创建一个事务,向商品表中添加一条记录,设置保存点;再将商品编号为ds-OOl” 的单价改为“2000”。BEGIN TRANSACTIONUSE 仓库库存IN

16、SERT INTO 商品(商品编号,商品名称,单价,生产商)VALUES(bx-159,冰箱,2500,安徽美菱)SAVE TRAN savepointUPDATE 商品 SET 单价=2000 WHERE 商品编号= ds-001COMMIT13.6 习题1简述数据库备份和还原的基本概念? 答:数据库备份就是在某种介质上(磁盘、磁带等)创建完整数据库(或者其中一部分)的 副本,并将所有的数据项都复制到备份集,以便在数据库遭到破坏时能够恢复数据库。还原数据库是一个装载数据库的备份,然后应用事务日志重建的过程。 2数据库备份有哪几种类型?答:在SQL Server系统中,有4种备份类型,分别如下

17、所示: 完整数据库备份。 差异数据库备份。 事务日志备份。 数据库文件或文件组备份。3简述数据库的恢复模式。答: SQL Server 2005系统提供了3 种数据库的恢复模式: 完整恢复模式。 简单恢复模式。 大容量日志恢复模式。4在 SQL Server Management Studio 中使用界面进行备份和还原数据库的操作过程。答:略。5.使用T-SQL语句分别实现数据库的备份和还原操作。答:略。6了解数据库的分离和附加的作用及操作方法。答: SQL Server 2005 允许分离数据库的数据和事务日志文件,然后将其重新附加到同 一台或另一台服务器上。分离数据库将从SQL Serve

18、r删除数据库,但是保证在组成该 数据库的数据和事务日志文件中的数据库完好无损。然后这些数据和事务日志文件可以 用来将数据库附加到任何 SQL Server 实例上,这使数据库的使用状态与它分离时的状 态完全相同。14.6 习题1简答题简述SQL Server的安全性机制。答:SQL Server 2005的安全性管理机制可分为三个等级:操作系统级、SQL Server级 和数据库级。在用户使用客户计算机通过网络实现SQL Server服务器的访问时,用户 首先要获得计算机操作系统的使用权。 SQL Server 的服务器级安全性建立在控制服务 器登录账号和口令的基础上。SQL Server采用

19、了标准SQL Server登录和集成WindowsNT登录两种方式。在用户通过SQL Server服务器的安全性检验以后,将直接面对不同 的数据库入口这是用户将接受的第三次安全性检验。(2) 简述服务器登录账户和数据库用户账号的创建方法。答:略。(3) SQL Server两种身份验证的优点分别是什么? 答:Windows验证模式有以下主要优点:数据库管理员的工作可以集中在管理数据库上,而不是管理用户账户。对用户账户 的管理可以交给 Windows 去完成。Windows 有着更强的用户账户管理工具。可以设置账户锁定、密码期限等。Windows的组策略支持多个用户同时被授权访问SQL Serv

20、er。SQL Server是从RPC协议连接中自动登录Windows用户账户信息的。 混合验证模式具有如下优点:创建了 Windows 之上的另外一个安全层次。支持更大范围的用户,例如非Windows客户、Novell网络等。一个应用程序可利用单个的SQL Server登录或口令。(4) 简述角色的概念及其分类。答:角色是一种SQL Server安全账户,是SQL Server内部的管理单元,是管理权限时 可以视为单个单元的其他安全账户的集合。角色被分成3类:固定服务器角色、固定数据库角色和用户自定义的数据库角色。(5) 简述什么是固定服务器角色?什么是固定数据库角色。 答:固定服务器角色是在

21、服务器级别定义的,所以存在于数据库外面,是属于数据库服 务器的。在SQL Server安装时就创建了在服务器级别上应用的大量预定义的角色,每 个角色对应着相应的管理权限。在SQL Server 2005安装时,数据库级别上也有一些预 定义的角色,在创建每个数据库时都会添加这些角色到新创建的数据库中,每个角色对 应着相应的权限。(6) 试述用户自定义数据库角色及应用程序角色的建立方法。答:略。(7) 简述进行权限设置时,授予、拒绝或撤销三者的关系。 答:授予:用户被授予特定数据库对象的某种操作权限,该用户就可以对数据在此权限 范围内进行操作;撤销:用户不再具有特定数据库对象的某种操作权限,但用户

22、可以通 过其组或角色成员身份继承此种权限;拒绝:禁止用户对特定数据库对象的某种操作权 限,防止用户通过其组或角色成员身份继承此种权限。2操作题 (1)创建一个登录,并对其进行修改和删除。 对SQL Server进行下列操作:更改SQL Serer服务登录。(3)利用系统过程创建3个新的SQL Server登录:al、a2、a3,相对应的密码是al、a2、 a3,默认的数据库为仓库库存数据库。根据(10)中的3个登录,创建3个数据库用户al、a2、a3。练习使用GRANT、REVOKE 和 DENY 语句设置数据库用户的权限。用这3个登录名登录SQL Server,进行相应权限范围内的数据库操作

23、。 答:略。15.4 习题1. 简述C#语言的特点。答:(1)语法简洁(2)完全面向对象(3)与Web紧密结合(4)目标软件的安全性(5)版本管理技术 (6)灵活性与兼容性2. 简述ADO.NET对象模型的五个主要的组件。答:ADO.NET对象模型有五个主要的组件,分别是Connection对象、Command对象、 DataReader 对象、DataSet 对象以及 DataAdapter 对象。Connectio n对象表示与数据源之间的连接,用它来建立或断开与数据库的连接。 Command对象主要可以用来对数据库发出一些指令,例如可以对数据库下达查询、插 入、修改、删除等数据指令,以及

24、呼叫存在数据库中的预存程序等。DataReader用于以最快的速度检索并检查查询所返回的行。DataSet对象可视为暂存区。可以把数据库中查到的信息保存起来,甚至可以显示整个 数据库。DataAdapter对象充当数据库和ADO.NET对象模型中非连接对象之间的桥梁。3. 简述ADO.NET访问数据库的两种方法。答:利用 Connection、 Command 和 DataReader 对象访问数据库,只能从数据库读取数 据,不能添加、修改和删除记录。如果只想进行查询,这种方式效率更高一些。利用 Connection、 Command、 DataAdapter 和 DataSet 对象,这种方式比较灵活, 不仅可以对数据库进行查询操作,还可以进行增加、删除和修改等操作。4. 使用C#语言,通过ASP.NET技术,创建一个“仓库库存管理系统”的数据库应用系 统。包括进货录入、产品库存查询、产品库存维护、出货等功能。数据库的设计过程和 程序开发全部由读者自行完成。答:略。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!