SQL课件--十一、T-SQL编程.ppt

SQL课件--十一、T-SQL编程.ppt

ID:51489072

大小:3.01 MB

页数:28页

时间:2020-03-24

SQL课件--十一、T-SQL编程.ppt_第1页
SQL课件--十一、T-SQL编程.ppt_第2页
SQL课件--十一、T-SQL编程.ppt_第3页
SQL课件--十一、T-SQL编程.ppt_第4页
SQL课件--十一、T-SQL编程.ppt_第5页
资源描述:

《SQL课件--十一、T-SQL编程.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第十一章T-SQL编程目标掌握如何定义变量并赋值掌握如何输出显示数据掌握IF、WHILE、CASE逻辑控制语句理解SQL中批处理的概念使用变量变量分为:局部变量:局部变量必须以标记@作为前缀,如@age局部变量的使用也是先声明,再赋值全局变量:全局变量必须以标记@@作为前缀,如@@version全局变量由系统定义和维护,我们只能读取,不能修改全局变量的值局部变量例如:DECLARE@namevarchar(8)DECLARE@seatint声明局部变量DECLARE@变量名数据类型赋值SET@变量名=值SELECT@

2、变量名=值例如:SET@name=‘张三’SELECT@name=stuNameFROMstuInfoWHEREstuNo=‘s25302’必须确保筛选出的记录只有1条或局部变量示例问题:编写T-SQL查找李文才的左右同桌?学员信息表分析:第一步,找出“李文才“的座位号;第二步,李文才的座位号加1或减1局部变量示例/*--查找李文才的信息--*/DECLARE@namevarchar(8)--学员姓名SET@name='李文才'--使用SET赋值SELECT*FROMstuInfoWHEREstuName=@name

3、/*--查找李文才的左右同桌--*/DECLARE@seatint--座位号SELECT@seat=stuSeatFROMstuInfo--使用SELECT赋值WHEREstuName=@nameSELECT*FROMstuInfoWHERE(stuSeat=@seat+1)OR(stuSeat=@seat-1)GO演示:使用局部变量参考语句全局变量全局变量都使用两个@标志作为前缀变量含义@@ERROR最后一个T-SQL错误的错误号@@IDENTITY最后一次插入的标识值@@LANGUAGE当前使用的语言的名称@@M

4、AX_CONNECTIONS可以创建的同时连接的最大数目@@ROWCOUNT受上一个SQL语句影响的行数@@SERVERNAME本地服务器的名称@@TRANSCOUNT当前连接打开的事务数@@VERSIONSQLServer的版本信息全局变量示例print'SQLServer的版本'+@@VERSIONprint'服务器的名称:'+@@SERVERNAMEINSERTINTOstuInfo(stuName,stuNo,stuSex,stuAge)VALUES('武松','s25328','男','23')--如果大于

5、0表示上一条语句执行有错误print'当前错误号'+convert(varchar(5),@@ERROR)print'刚才报名的学员,座位号为:'+convert(varchar(5),@@IDENTITY)UPDATEstuinfoSETstuAge=85WHEREstuName='李文才'print'当前错误号'+convert(varchar(5),@@ERROR)GO演示:使用全局变量参考语句SQLServer的版本服务器名称座位号(自动编号)错误号错误号逻辑控制语句T-SQL语言提供了一些可用于改变语句执行

6、顺序的命令,称为流程控制语句.流程控制语句与常见的程序设计语言类似,主要包括以下几种:begin…end…if…elsecasewhile...continue...breakgoto逻辑控制语句IF-ELSE语句SQL中的IF-ELSE语句IF(条件)BEGIN语句1语句2……ENDELSEBEGIN语句1;语句2;……ENDELSE是可选部分如果有多条语句,才需要BEGIN-END语句块IF-ELSE示例问题:统计并显示本班笔试平均分,如果平均分在70以上,显示“成绩优秀“,并显示前三名学员的考试信息;如果在70

7、以下,显示“本班成绩较差“,并显示后三名学员的考试信息。学员成绩表分析:第一步,统计平均成绩存入临时变量;第二步,用IF-ELSE判断;IF-ELSE示例设置输出结果的格式为了文本消息和输出结果显示在同一窗口,需要设置输出结果的格式逻辑控制语句WHILE循环语句SQL中的WHILE语句WHILE(条件)BEGIN语句1语句2……BREAKENDBREAK表示退出循环如果有多条语句,才需要BEGIN-END语句块WHILE示例问题:本次考试成绩较差,假定要提分,确保每人笔试都通过。提分规则很简单,先每人都加2分,看是否

8、都通过,如果没有全部通过,每人再加2分,再看是否都通过,如此反复提分,直到所有人都通过为止。学员成绩表分析:第一步,统计没通过的人数; 第二步,如果有人没通过,加分; 第三步,循环判断。DECLARE@nintWHILE(1=1)--条件永远成立BEGINSELECT@n=COUNT(*)FROMstuMarksWHEREwrittenExam

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。