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

加入VIP,省得不是一点点
 

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

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

下载须知

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

版权提示 | 免责声明

本文(第八章 存储过程的创建和使用.doc)为本站会员(hw****26)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

第八章 存储过程的创建和使用.doc

1、第八章 存储过程的创建和使用8.1 概述存储过程就是存储在 SQL Server 服务器中的一组编译成单个执行计划的 Transact-SQL语句。存储过程存储在数据库内,可由应用程序通过调用执行。使用存储过程不但可以提高 Transact-SQL 的执行效率,而且可以使对数据库的管理以及实现应用复杂的业务更容易。存储过程也可看作是一种没有返回值的特殊函数,它与函数的区别是:函数有返回值,其返回值可以直接在表达式、计算列中使用;而存储过程只能调用执行,它不能通过名称得到返回值,也不能直接在表达式、计算列中使用。8.1.1 任务一 理解存储过程的概念存储过程是 SQL 语句和可选控制流语句的预编

2、译集合,以一个名称存储并作为一个单元处理,存储过程可以包含一条 SELECT 语句,也可包含一系列使用控制流的 SQL 语句。它们还可接受参数、返回输出参数、返回状态值,主要用来执行管理任务或实现应用复杂的业务规则。8.1.2 任务二 理解存储过程的优点使用存储过程与本地的 Transact-SQL 程序相比有如下好处。1、 简化用户操作:存储过程将一系列复杂的 Transact-SQL 代码封装在一起,作为数据库对象存放于数据库服务器内,用户使用时不必思考复杂的 Transact-SQL 语句而只需调用存储过程即可得到所需结果,简化了用户操作。2、 执行效率更高:存储过程已被编译,执行时不再

3、花费编译与优化时间。3、 提高系统安全性:通过适当的权限设置,可以使系统的安全性得到有效保障。4、 运行模块化程序设计:可以只创建一次并将其存储在数据库中,以后即可在程序中调用该过程任意次,而且可以统一修改。8.2 创建存储过程8.2.1 任务一 使用企业管理器创建存储过程1、 启动 SQL Server 企业管理器,一次单击控制台树上的“服务器组” “服务器”“数据库” “要创建存储过程的数据库”节点并右击“存储过程”节点,在弹出的快捷菜单中选择“新建存储过程”命令2、 弹出存储过程属性对话框,在“文本”框中输入存储过程。包括修改存储过程名,并在“AS”后输入存储过程内容。3、 单击“检查语

4、法”按钮,检查所输入的 SQL 语句语法是否正确。4、 单击“确定”按钮,创建该存储过程。8.2.2 任务二 使用 Transact-SQL 语句创建存储过程可用 CREATE PROCEDURE 语句创建存储过程,语法格式如下:CREATE PROC EDURE 存储过程名 ;number参数数据类型VARYING=默认值OUTPUT,nWITHRECOMPILE|ENCRYPTION|RECOMPILE,ENCRYPTIONFOR REPLICATIONASSql 语句n参数说明: 存储过程名:新建存储过程名称必须符合标识符规则,且对于数据库及其所有者必须唯一。 要创建局部临时过程,可以在

5、存储过程名前面加一个编号符(#存储过程名) ,要创建全局临时过程,可以在存储过程名前面加两个编号符(#存储过程名) 。 ;number:是可选的整数,用来对同名的过程分组,以便用一条 DROP PROECDURE 语句即可将同组的过程一起除去。 参数:过程中的参数。在 CREATE PROCEDURE 语句中可以声明一个或多个参数。数据类型用于限定参数的数据类型。 OUTPUT:表名参数是否返回参数。该选项的值可以返回给 EXECUTE。使用 OUTPUT 参数可将信息返回给调用过程。 RECOMPILE:表明 SQL Server 不会缓存该过程的计划,该过程将在运行时重新编译。 ENCRY

6、PTION:表示 SQL Server 加密 syscomments 表中包含 CREATE PROCEDURE 语句文本的条目。 FOR REPLICATION:指定不能在订阅服务器上执行为复制创建的存储过程。8.3 执行存储过程当需要执行存储过程时,要使用 EXECUTE 语句。如果存储过程是批处理中的第一条语句,那么不使用 EXECUTE 关键字也可以执行该存储过程。例 8-1 创建一个名为“proc_1”的存储过程,用于查看学生表的所有信息。然后调用该存储过程。SQL 语句如下:USE SCinfoGOCREATE PROCEDURE proc_1AS SELECT *FROM Stu

7、dents例 8-2 创建一个名为“proc_2”的存储过程,用于向学生表的所有字段添加一条记录,记录内容由调用时决定。然后调用该存储过程输入一条记录(1111,关羽,M,English,30 )。SQL 语句如下:USE SCinfoGOCREATE PROCEDURE proc_2 Sno SMALLINT,Sname VARCHAR(8),Ssex CHAR(1),Sdept VARCHAR(20),Sage TINYINT AS INSERT INTO StudentsVALUES(Sno,Sname,Ssex,Sdept,Sage)GOEXEC proc_2 1111,关羽 ,F,E

8、nglish,30 GO实验八 存储过程和游标的创建和使用一、实验目的1. 理解存储过程的概念,掌握各种存储过程的创建方法。2. 掌握查看、修改和删除存储过程的方法。3. 掌握执行存储过程的方法。4 掌握游标的创建和使用。二、实验内容1 存储过程的创建和使用。(1)、创建一个名为“proc_1” 的存储过程,用于查看学生表的所有信息。然后调用该存储过程。SQL 语句如下:USE SCinfoGOCREATE PROCEDURE proc_1AS SELECT *FROM Students(2)、创建一个名为“proc_2” 的存储过程,用于向学生表的所有字段添加一条记录,记录内容由调用时决定。

9、然后调用该存储过程输入一条记录(1111,关羽,M,English,30 )。SQL 语句如下:USE SCinfoGOCREATE PROCEDURE proc_2 Sno SMALLINT,Sname VARCHAR(8),Ssex CHAR(1),Sdept VARCHAR(20),Sage TINYINT AS INSERT INTO StudentsVALUES(Sno,Sname,Ssex,Sdept,Sage)GOEXEC proc_2 1111,关羽 ,F,English,30 GO(3)、创建一个名为“proc_3” 的存储过程,用于删除学生表中指定学号的记录,具体学号由调用

10、时决定。然后调用该存储过程将学号为 1111 的记录删除。SQL 语句如下:USE SCinfoGOCREATE PROCEDURE proc_3 Sno SMALLINTAS DELETE FROM StudentsWHERE Sno = SnoGOEXEC proc_3 1111GO(4)、修改存储过程“proc_3” ,用于查询不小于指定年龄的学生的基本信息,具体年龄由调用时决定。然后调用存储过程 proc_3 查询年龄小于 20 岁的学生记录。SQL 语句如下:USE SCinfoGOALTER PROCEDURE proc_3 Sage TINYINTAS SELECT * FROM

11、 StudentsWHERE Sage SageGOEXEC proc_3 20GO2.游标的创建和使用(1)定义一个游标 STU1 并利用游标逐行输出学生表(Students)中学生的学号、姓名、性别,使用完游标后立即关闭并释放该游标。SQL 语句如下:DECLARE STU1 CURSOR -定义游标FOR SELECT Sno,Sname,Ssex FROM StudentsOPEN STU1 -打开游标DECLARE Sno smallint ,Sname varchar(8),Ssex char(1) -定义变量FETCH NEXT FROM STU1 INTO Sno ,Sname

12、,Ssex -获取一行值WHILE FETCH_STATUS = 0BEGINSELECT 学号=Sno, 姓名= Sname, 性别:= SsexFETCH NEXT FROM STU1 INTO Sno ,Sname,Ssex -从游标读取下一行值ENDCLOSE STU1 -关闭游标DEALLOCATE STU1 -释放游标(2)定义一个游标 STU2 并利用该游标输出学生表(Students)中第一个学生的所有信息,然后将该学生姓名改为张飞,并再次输入该学生信息,使用完游标后立即关闭并释放该游标。SQL 语句如下:DECLARE STU2 CURSOR -定义游标FOR SELECT

13、* FROM StudentsFOR UPDATE OF Sno ,Sname,Ssex,Sdept,SageOPEN STU2 -打开游标DECLARE Sno smallint ,Sname varchar(8),Ssex char(1),Sdept varchar(20),Sage tinyint -定义变量FETCH NEXT FROM STU2 INTO Sno ,Sname,Ssex,Sdept,Sage -获取第一行值SELECT 学号=Sno, 姓名 = Sname, 性别:= Ssex,系别=Sdept ,年龄=SageUPDATE Students -将当前行记录修改SET Sname = 张飞WHERE CURRENT OF STU2CLOSE STU2 -关闭游标DEALLOCATE STU2 -释放游标

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。