第11章 存储过程.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11章 存储过程 第11章 存储过程 1. 存储过程概述 2. 存储过程的创建与执行 3. 修改存储过程 4. 重命名存储过程 5. 删除存储过程 11.1 存储过程概述 存储过程(Procedure)是一个被命名的Transact-SQL语句的集合。 存储过程经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。 执行存储过程就相当于执行了这组T-SQL语句集合。 11.1 存储过程概述 SQL Server2008存储过程可分为两种: 1. 系统存储过程 系统提供的存储过程,用来完成数据库系统的管理功能。系统存储过程命名通常以“sp_”为前缀。比如sp_help、sp_rename等。 2. 用户定义的存储过程 用户可根据数据处理需要定义的存储过程。 11.1 存储过程概述 存储过程的优点 存储过程允许模块化程序设计; 存储过程能够实现较快的执行速度; 减少网络通信流量; 存储过程可以屏蔽数据库设计细节,且可以通过授权来限制存储过程的可用性,从而提高数据安全性。 11.2 存储过程的创建与执行 11.2.1 在图形界面下创建存储过程 在图形界面下创建存储过程步骤如下: 1.打开Microsoft SQL Server Manager Studio,并连接数据库。 2.在对象资源管理器中,依次展开“数据库|CJGL|可编程性”,选中“存储过程”单击鼠标右键,选择“新建存储过程”,如图所示。 11.2 存储过程的创建与执行 3.系统将在查询编辑器中打开存储过程模版,在模版中输入存储过程的名称,设置相应的参数。也可以通过菜单“查询”|“指定模版参数的值”进行设置。 4.指定模版参数的值窗口的前三行分别是创建人、创建时间、描述,它们是存储过程的注释。从第四行开始,分别指定存储过程名称、参数名称、数据类型、参数的缺省值,如图所示。 11.2 存储过程的创建与执行 11.2.2 用SQL语句创建存储过程 使用CREATE PROCEDURE语句可以创建存储过程。其语法如下: CREATE PROC procedure_name [@parameter data_type ].. [@parameter data_type OUTPUT] [ WITH procedure_option [ ,...n ] ] [ FOR REPLICATION ] AS Begin sql_statement;(查询语句) End 11.2 存储过程的创建与执行 【例11.1】无参数的存储过程。 查询表Teacher的内容的存储过程 USE CJGL; GO CREATE PROC GetTeacherInfo AS SELECT * FROM Teacher GO 11.2 存储过程的创建与执行 【例11.2】在存储过程中使用输入参数。 创建名为GetStuInfoById的存储过程,返回在指定学号的学生 基本信息。 USE CJGL GO CREATE PROC GetStuInfoById @id int AS SELECT * FROM student where studentID = @id GO 11.2 存储过程的创建与执行 【例11.3】在存储过程中使用输出参数 以下示例将创建 GetStuNameById存储过程。此过程有一个输入参数@ID和一 个输出参数@Name,根据输入参数的值,查询对应学生的姓名,并通过输出参 数返回到外部。 CREATE PROCEDURE dbo.GetStuNameById @ID int, @Name varchar(20) OUTPUT AS SELECT @Name = studentName FROM student WHERE studentID = @ID GO 11.2 存储过程的创建与执行 【例11.4】使用带有通配符参数的简单过程 以下存储过程从数据表Course中返回指定的一些课程信息。此 存储过程模式与所传递的参数相匹配;如果未提供参数,则使 用预设的默认值(以字母“计算机”打头的课程)。 CREATE PROCEDURE GetCourseInfo @courseName varchar(40) = 计算机 AS SELECT * FROM dbo.Course WHERE courseName LIKE @courseName+% GO 11.2 存储过程的创建与执行 【例11.5】使用 WITH RECOMPILE 选项 ? 如果不希望SQL?Server?将某个存储过程进行预先编译,则该存储过程将在每次执行时都重新编译。 CREATE PROCE

文档评论(0)

wei1155 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档