下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上第 章10存 储 过 程10.1 练习题10及参考答案1什么是存储过程?存储过程分为哪几类?使用存储过程有什么好处?答:存储过程是一系列预先编辑好的、能实现特定数据操作功能的SQL代码集,它与特定的数据库相关联,存储在SQL Server服务器上。用户可以像使用函数一样重复调用这些存储过程,实现它所定义的操作。存储过程分为3类:系统提供的存储过程、用户定义的存储过程和扩展存储过程。使用存储过程有如下好处如下:(1)存储过程提供了处理复杂任务的能力:存储过程提供了许多标准SQL语言所没有的高级特性,通过传递参数和执行逻辑表达式,能够处理复杂任务。(2)增强代码的重用性和
2、共享性:每一个存储过程可以在系统中重复地调用,可以被多个有访问权限的用户访问。存储过程可以增强代码的重用性和共享性,加快应用系统的开发速度,提高开发的质量和效率。(3)减少网络数据流量:存储过程是存放在服务器中并在服务器上运行的,应用系统调用存储过程时只有触发执行存储过程的命令和执行结束返回的结果在网络中传输。所以,使用存储过程可以减少网络中的数据流量。(4)加快系统运行速度:第一次执行后的存储过程会驻留在内存中,以后可以直接运行,从而加快应用系统的处理速度。(5)加强系统安全性:SQL Server可以不授予用户某些表、视图的访问权限,但授予用户执行存储过程的权限,通过存储过程来对这些表或视
3、图进行访问操作。从而保证表中数据的安全性。2修改存储过程有哪几种方法?假设有一个存储过程需要修改但又不希望影响现有的权限,应使用哪个语句来进行修改?答:修改存储过程有两种方法:一种方法是把旧的存储过程删除,然后再重新建立该存储过程。另一种方法是用单个的步骤更改该存储过程。使用前一种方法修改存储过程,所有与该存储过程相关联的权限都将丢失。而使用后一种方法可以更改过程或参数定义,但为该存储过程定义的权限将保留。所以要修改一个存储过程但又不希望影响现有的权限可使用后一种方法。使用的语句为ALTER PROCEDURE。10.2 上机实验题9及操作过程在上机实验题8的factory数据库上,使用T-S
4、QL语句完成如下各题:(1)创建一个为worker表添加职工记录的存储过程Addworker。(2)创建一个存储过程Delworker删除worker表中指定职工号的记录。(3)显示存储过程Delworker。(4)删除存储过程Addworker和Delworker。操作过程(1)建立存储过程的程序如下:USE factoryGOCREATE PROCEDURE Addworker no int=NULL, name char(10)=NULL, sex char(2)=NULL, birthday datetime=NULL, na char(2)=NULL, wtime datetime=
5、NULL, depno int=NULLASIF no IS NULL OR name IS NULL OR sex IS NULL OR birthday IS NULL OR depno IS NULLBEGIN PRINT '请重新输入该职工信息!' PRINT '你必须提供职工号、姓名、性别、出生日期、部门号' RETURNENDBEGIN TRANSACTION INSERT INTO worker VALUES(no,name,sex,birthday,na,wtime,depno) IF error<>0 BEGIN ROLLBACK
6、TRAN RETURN ENDCOMMIT TRANSACTIONPRINT '职工'+name+'的信息成功添加到表worker中'执行下列语句,可验证存储过程的正确性:USE factoryGOAddworker 20,'陈立','女','55/03/08','否','75/10/10',4GOSELECT 职工号,姓名,性别,党员否 FROM workerGO执行结果如下:职工陈立 的信息成功添加到表worker中职工号 姓名 性别 党员否- - - -1 孙华 男 是10 陈
7、涛 男 否11 刘欣 男 否12 李涵 男 是13 王小燕 女 否14 李艺 女 否15 魏君 女 否2 孙天奇 女 否20 陈立 女 否3 陈明 男 否4 李华 男 否5 余慧 男 是6 欧阳少兵 男 否7 程西 女 是8 张旗 男 否9 刘夫文 男 是(2)建立存储过程的程序如下:USE factoryGOCREATE PROCEDURE Delworker no int=NULLASIF no IS NULLBEGIN PRINT '必须输入职工号!' RETURNENDBEGIN TRANSACTION DELETE FROM worker WHERE 职工号=no I
8、F error<>0 BEGIN ROLLBACK TRAN RETURN ENDCOMMIT TRANSACTIONPRINT '成功删除职工号为'+CAST(no AS CHAR(2)+'的职工记录'执行下列语句,可验证存储过程的正确性:USE factoryGODelworker 20GOSELECT 职工号,姓名,性别,党员否 FROM workerGO执行结果如下:成功删除职工号为的职工记录职工号 姓名 性别 党员否- - - -1 孙华 男 是10 陈涛 男 否11 刘欣 男 否12 李涵 男 是13 王小燕 女 否14 李艺 女 否15
9、 魏君 女 否2 孙天奇 女 否3 陈明 男 否4 李华 男 否5 余慧 男 是6 欧阳少兵 男 否7 程西 女 是8 张旗 男 否9 刘夫文 男 是(3)对应的程序如下:USE factoryGOEXEC sp_helptext DelworkerGO执行结果如下:Text-CREATE PROCEDURE Delworker no int=NULLASIF no IS NULLBEGIN PRINT '必须输入职工号!' RETURNENDBEGIN TRANSACTION DELETE FROM worker WHERE 职工号=no IF error<>0 BEGIN ROLLBACK TRAN RETURN ENDCOMMIT TRANSACTIONPRINT '成功删除职工号为'+CAST(no AS CHAR(2)+'的职工记录'(4)对应的程序如下:USE factoryGOIF EXISTS (SELECT name FROM sysobjects WHERE name = 'Addworker' AND type ='P') DROP PROCEDURE A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 延安大学《美国文学》2023-2024学年第一学期期末试卷
- 加强品牌建设的实施方案计划
- 许昌学院《中国民族民间舞》2021-2022学年第一学期期末试卷
- 四年级数学(四则混合运算)计算题专项练习与答案汇编
- 一年级数学(上)计算题专项练习集锦
- 物流人员劳动合同三篇
- 徐州工程学院《数字媒体艺术赏析》2023-2024学年第一学期期末试卷
- 重要场所安防措施落实计划
- 盐类运输合同三篇
- 秘书工作计划的关键要素
- TNP-4110技术说明(电子版)
- 马克思主义政治经济学概论(第二版)知识点总结
- 对招标项目设计的特点及关键性技术问题的对策措施
- 在建构游戏中助推幼儿深度学习的策略以小班建构游戏《搭高楼》为例
- 23S519 小型排水构筑物(带书签)
- 绩效管理-目标、绩效和员工激励
- 新教科版 三年级上册科学全册各课复习课件
- 滴定管的正确使用
- 科学思维方法在实际生活和工作中的应用
- 赵昭《匆匆》教学实录
- 【新时代消费群体购买可口可乐产品影响因素的实证分析报告(论文)9000字】
评论
0/150
提交评论