第8章 流程控制与游标.pptVIP

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 流程控制与游标

流程控制语句 T-SQL语言提供较SQL语言,进行了扩充,其中控制流是最为重要的部分,它用于控制T-SQL语句、语句块和存储过程的执行流。流程控制语句关键字可用于临时性T-SQL语句、批处理和存储过程中。控制流语言的使用与程序设计十分相似。 Begin…End语句 Begin…End语句用于包括一组T-SQL语句,使一组T-SQL语句做为一个单元进行处理。BEGIN和END是控制流语言的关键字。(具体内容请参照书。) if..else条件语句 指定T-SQL语句的执行条件。如果满足条件(布尔表达式返回TRUE),则在IF关键字及其条件之后执行T-SQL语句。可选的ELSE关键字,在布尔表达式返回FALSE时引入另一个T-SQL语句,当不满足IF条件时就执行该语句。(具体内容请参照书。) While语句 While语句用于设置重复执行SQL语句或语句块的条件,只要指定的条件为真,就重复执行语句。可以使用BREAK和CONTINUE关键字,在循环内部控制WHILE循环中语句的执行。(具体内容请参照书。) Case语句 CASE语句用于计算条件列表,并返回多个可能结果表达式之一。CASE具有两种形式: 简单CASE函数形式,用于将某个表达式与一组简单表达式进行比较,以得到结果。 CASE搜索函数形式,计算一组布尔表达式,以得到结果。 Goto语句 Goto语句将执行流更改到其他位置(标签处),通过该语句,跳过Goto后面的T-SQL语句,并从标签位置继续处理。GOTO语句和标签可在过程、批处理或语句块中的任何位置使用,Goto语句也可嵌套使用。(具体内容请参照书。) Waitfor语句 Waitfor语句用于达到指定时间或时间间隔之前,或者指定语句至少修改或返回数据之前,阻止执行批处理、存储过程或者事务。 Waitfor语句的处理过程是,如果查询不能返回任何行,WAITFOR将一直等待,或等到满足TIMEOUT条件。如果查询超出了query wait选项的值,则WAITFOR语句参数不运行即可完成。 Return语句 Return语句,从查询或过程中无条件退出。RETURN的执行是即时且完全的,可在任何时候用于从过程、批处理或语句块中退出。RETURN之后的语句是不执行的。(具体内容请参照书。) Try…catch语句 Try…catch语句在SQL Server 2005数据库中是新加入的,它用于实现类似于C#和C++语言中的异常处理的错误处理。T-SQL语句组可以包含在TRY块中。如果TRY块内部发生错误,则会将控制传递给CATCH块中包含的另一个语句组。(具体内容请参照书。) Execute语句 Exectue用于执行T-SQL批中的命令字符串、字符串或执行下列模块之一:系统存储过程、用户定义存储过程、标量值用户定义函数或扩展存储过程。SQL Server 2005数据库还提供了扩展的EXECUTE语句,可以向链接服务器发送传递命令。(具体内容请参照书。) 游标 用户在使用数据库的记录时,经常会处理一批记录,如由SELECT语句返回的记录集包括满足该语句的WHERE子句中条件的所有记录(这种由语句返回的完整记录集称为结果集)。但是一般的应用程序,并不总能将整个结果集作为一个单元来有效地处理。这些应用程序需要一种机制,以实现每次处理一行或许多行数据。游标就是提供这种机制的,对结果集处理的一种扩展。 游标简介 游标就是操作结果集的一种常用方式,通过游标可以进行针对结果集的逐行处理。打开结果集中的游标,即可对结果集进行逐行处理。可以将游标分配给具有cursor数据类型的变量或参数。游标通过以下方式来扩展结果处理。 (1)在结果集对特定行进行定位。 (2)从结果集的当前位置检索数据行。 (3)支持对结果集中,当前位置的行进行数据修改操作。 (4)支持在脚本、存储过程和触发器中,访问结果集中的数据。 定义游标 用户可以通过DECLARE CURSOR语句定义游标,但要求遵循一定的语法。本节讲述DECLARE CURSOR的语法结构及其使用。(具体内容请参照书。) 打开游标 打开T-SQL服务器端游标,然后通过执行在DECLARE CURSOR或SET cursor_variable语句中指定的T-SQL语句填充游标。(具体内容请参照书。) 读取游标 使用FETCH通过T-SQL服务器游标检索特定行,实现游标的读取。 1.FETCH语句的语法(具体内容请参照书。) 关闭和删除游标 释放当前结果集,然后解除定位游标的行上的游标锁定,以便关闭一个开放的游标。CLOSE将保留数据结构以便重新打开,但在重新打开游标之前,不允许提取和定位更新。用户使用DEALLOCATE删除游标引用。当释放最后的游标引用时,SQL Server 2005数据库将释

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档