- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Transact-SQL流程控制语句.ppt
Transact-SQL 流控制语句 局部变量和全局变量 局部变量是在批或存储过程中声明使用的。 全局变量是SQL Server提供的特殊函数 。 声明局部变量: declare @变量名 数据类型[,...n] 局部变量赋值:? select @变量名=表达式 set?? @变量名=表达式 程序控制语句 1 BEGIN...END语句 相当于C语言中的大括号或复合语句,它将多条T-SQL语句封装成为一个整体的语句块。通常把BEGIN...END语句放在语句IF...ElSE或者WHILE中,使其中的语句作为一个整体来执行。? ??? BEGIN? ??????? T-SQL 语句块? ? END T-SQL中可以使用嵌套的BEGIN...END语句。 2 PRINT语句 用于将用户定义的消息返回到客户端。 PRINT ‘字符文本| @local_variable| @@global_variable| string_expr 3 IF...ELSE语句 选择结构,用于进行条件判断,它可以进行批处理、存储过程或特殊查询,并且可以嵌套使用。 ? IF?布尔表达式 {sql语句|语句块}?ElSE {sql语句|语句块}? ?? ? ? 布尔表达式中可以含有select语句,必须用圆括号将select语句括起来。 例-- IF...ELSE语句 if (select count(*) from T_opt,T_lesson where and T_opt.Lid=T_lesson.Lid and lname=‘数据库原理 and score80)0 begin print ‘数据库原理课程的分数低于80分! select s.sid, s.sname,o.score from T_student s join T_opt g on s.sid=o.sid join T_lesson l on l.Lid=o.Lid where o.score80 and l.lname=数据库原理 end else print ‘数据库原理课程的分数均高于80分 4 CASE语句 多分支条件语句 ???? CASE WHEN 条件1 THEN 值1 ??? WHEN 条件2 THEN 值2 ??? ... END 例:根据课时确定学分 declare @lclasses int declare @lgrade int set @lclasses=64 --select @lclasses=lclasses from T_lesson where Lid=‘01’ set @lgrade= case when @lclasses=32 then 2 when @ lclasses =64 then 4 when @ lclasses =80 then 5 end print @lgrade 例:根据成绩确定级别 select Sid as 学号, level= case when score=60 then bad when score60 and score=80 then good when score80 then perfect end from T_opt where Lid=11101 5 WHILE语句 条件循环语句,在满足条件时执行循环体,不满足条件时跳出循环结构。 WHILE语句可以嵌套执行。 ??? ? ??? WHILE? 布尔表达式? ???? {? sql语句|语句块} CONTINUE语句:使程序跳过CONTINUE语句后面的语句,回到WHILE循环的第一行命令。 BREAK语句:使程序完全跳出循环,结束WHILE语句的执行。 例:打印从1到4这4个数字 declare @i int set @i=0 while(@i4) begin set @i=@i+1 print @i end 打印乘法口诀表 declare @i int,@j int set @i=1 set @j=1 while(@i=9) begin while(@j=@i) begin print str(@i,2)+*+str(@j,2)+=+str(@i*@j,2) set @j=@j+1 end set @i=@i+1 set @j=1 end 6 GOTO语句:移动到指定行,标号不能用数字定义。 7 RETURN 语句:无条件地终止一个查询、存储过程或者批处理。位于RETURN语句之后的程序将不会被执行。 打印数字11 declare @var1 int SET @v
您可能关注的文档
- SCI美国科学引文数据库 (课件下载).ppt
- SDA9206数字电视AD电路的应用.doc
- SDH & WDM.ppt
- SDH_原理介绍.ppt
- SDH原理介绍.ppt
- SDH原理基础.ppt
- SDH基础理论(cl).ppt
- SDH网络定时与同步新.ppt
- SDH设备原理.ppt
- SDH课程设计.doc
- 某区纪委书记年度民主生活会“四个带头”个人对照检查材料.docx
- 某县纪委监委2024年工作总结及2025年工作计划.docx
- 某市场监督管理局2024年第四季度意识形态领域风险分析研判报告.docx
- 县委书记履行全面从严治党“第一责任人”职责情况汇报.docx
- 税务局党委书记2024年抓党建工作述职报告.docx
- 某市税务局副局长202X年第一季度“一岗双责”履行情况报告.docx
- 副县长在全县元旦春节前后安全生产和消防安全工作部署会议上的讲话.docx
- 某市委书记个人述职报告.docx
- 某县长在县委常委班子年度民主生活会个人对照检查材料1.docx
- 某县长在县委常委班子年度民主生活会个人对照检查材料.docx
文档评论(0)