详细实例全面解析SQL存储过程幻灯片.pdf

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
详细实例全⾯解析SQL存储过程 存储过程(Stored Procedure),是⼀组为了完成特定功能的SQL 语句,类似⼀门程序设计 语⾔,也包括了数据类 、流程控制、输⼊和输出和它⾃⼰的函数库。存储过程可以 说是⼀个记录集,它是由⼀些T-SQL语句组成的代码块,这些T-SQL语句代码像⼀个 ⽅法⼀样实现⼀些功能 (对单表或多表的增删改查),然后再给这个代码块取⼀个名 字,在⽤到这个功能的时候调⽤他就⾏了。不过SQL存储过程对于⼀些初学者来说还 是⽐较抽象难理解的,因此本⽂将由浅⾄深地剖析SQL存储过程,帮助你学习它。 存储过程的优点 1.存储过程只在创造时进⾏编译,以后每次执⾏存储过程都不需再重新编译,⽽⼀般 SQL语句每执⾏⼀次就编译⼀次,所以使⽤存储过程可提⾼数据库执⾏速度,效率要⽐ T-SQL语句⾼。 2.当对数据库进⾏复杂操作时,可将此复杂操作⽤存储过程封装起来与数据库提供的 事务处理结合⼀起使⽤。 3、⼀个存储过程在程序在⽹络中交互时可以替代⼤堆的T-SQL语句,所以也能降低⽹ 络的通信量,提⾼通信速率。 4 .存储过程可以重复使⽤,可减少数据库开发⼈员的⼯作量。 5.安全性⾼,可设定只有某些⽤户才具有对指定存储过程的使⽤权 存储过程基本语法 创建存储过程 CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ ARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ] 调⽤存储过程 EXECUTE Procedure_name --存储过程如果有参数,后⾯加参数格式为:@参数名 删除存储过程 drop procedure procedure_name --在存储过程中 调⽤另外⼀个存储过程, 创建存储过程的参数 1.procedure_name :存储过程的名称,在前⾯加#为局部临时存储过程,加##为全局 临时存储过程。 2.; number :是可选的整数,⽤来对同名的过程分组,以便⽤⼀条 DROP PROCEDURE 语句即可将同组的过程⼀起除去。例如,名为 orders 的应⽤程序使⽤的 过程可以命名为 order roc;1、order roc;2 等。DROP PROCEDURE order roc 语句将除 去整个组。如果名称中包含定界标识符,则数字不应包含在标识符中,只应在 rocedure_name 前后使⽤适当的定界符。 3.@parameter :存储过程的参数。可以有⼀个或多个。⽤户必须在执⾏过程时提供每 个所声明参数的值 (除⾮定义了该参数的默认值)。存储过程最多可以有 2.100 个参 数。 使⽤ @ 符号作为第⼀个字符来指定参数名称。参数名称必须符合标识符的规则。每 个过程的参数仅⽤于该过程本⾝;相同的参数名称可以⽤在其它过程中。默认情况 下,参数只能代替常量,⽽不能⽤于代替表名、列名或其它数据库对象的名称。有关 更多信息,请参见 EXECUTE 。 4.data_type :参数的数据类 。所有数据类 (包括 text 、ntext 和 image )均可以⽤ 作存储过程的参数。不过,cursor 数据类 只能⽤于 OUTPUT 参数。如果指定的数据 类 为 cursor ,也必须同时指定 VARYING 和 OUTPUT 关键字。有关 SQL Server 提 供的数据类 及其语法的更多信息,请参见数据类 。 说明 对于可以是 cursor 数据类 的输出参数,没有最⼤数⽬的限制。 5.VARYI G :指定作为输出参数⽀持的结果集 (由存储过程动态构造,内容可以变 化)。仅适⽤于游标参数。 6.default : 参数的默认值。如果定义了默认值,不必指定该参数的值即可执⾏过程。 默认值必须是常量或 NULL 。如果过程将对该参数使⽤ LIKE 关键字,那么默认值中 可以包含通配符 (%、_ 、[] 和 [^] )。 7.OUTPUT :表明参数是返回参数。该选项的值可以返回给 EXEC[UTE] 。使⽤ OUTPUT 参数可将信息返回给调⽤过程。Text 、

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档