sql批处理和流程控制语句.ppt

sql批处理和流程控制语句.ppt

ID:48058893

大小:303.31 KB

页数:16页

时间:2019-05-06

sql批处理和流程控制语句.ppt_第1页
sql批处理和流程控制语句.ppt_第2页
sql批处理和流程控制语句.ppt_第3页
sql批处理和流程控制语句.ppt_第4页
sql批处理和流程控制语句.ppt_第5页
资源描述:

《sql批处理和流程控制语句.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、批处理和流程控制语句批处理所谓批处理是指从客户机传递到服务器上的一组完整的数据和SQL指令。在一个批处理中,可以只包含一条SQL指令,也可以包含多条指令。批处理的所有语句被当作一个整体整体,而被成批地分析、编译和执行,若这一批处理中存在一个语法错误,则所有的语句都无法通过编译。所有的批处理指令以GO作为结束的标志,当编译器读到GO时,它就会把GO前面的所有指令当作一个批处理,并包装成一个数据包发送给服务器。例如:建立一个批处理完成查询。USE学生信息库--打开数据库GOSELECT*FROM学生基本表WHERE院系名称=‘信息学院’GO流程控制语句一、注释语句在SQL中提供了两种注释方式:-

2、-:一行注释(注释的内容不超过一行)/**/:一段注释(当注释的内容超过一行)二、变量变量指的是在程序运行过程中值可以发生变化的量。SQL分为两种类型的变量:全局变量和局部变量。其中全局变量是系统已经定义好的变量,主要反映SQL数据库的操作状态。全局变量名称以@@开头;局部变量可以由用户定义,主要用于保存运算结果,局部变量的名称必须以@开头。局部变量的声明DECLARE<@变量名1><数据类型>[,<@变量名2><数据类型>……]例如:DECLARE@xint,@yint局部变量的显示SELECT<@变量名表>PRINT<@变量名>例如:SELECT@X,@Y在此,若使用SELECT显示,则

3、返回结果在“网格”中;若使用PRINT显示,则返回结果在“消息”中。局部变量赋值1.通过SELECT赋值SELECT<@变量名1>=<表达式1>[,<@变量名2>=<表达式2>……]说明:SELECT语句可以给多个变量赋值。例如:SELECT@X=0,@Y=12.通过SET赋值SET@变量名=表达式说明:局部变量没有赋值时其值是NULL;不能在一个SET语句中同时对几个变量赋值,如果给几个变量赋值,那就不得不分开来写。例如:按要求编写程序。先定义一个INT类型@num变量,CHAR类型@cnum变量,然后分别赋值2004,最后使用PRINT语句将这两个变量的值输出。DECLARE@numin

4、t,@cnumchar(10)SET@NUM=2004SET@CNUM=‘2004’PRINT@NUMPRINT@CNUM三、BEGIN……END语句又称语句块,是将SQL语句组合起来从而形成一个语句块。BEGIN语句1语句2..END说明:1.将要组合成语句块的语句在BEGIN和END之间就可以了。2.BEGIN……END可以嵌套。四、IF……ELSE语句利用IF……ELSE语句能够对一个条件进行测试,并根据测试的结果来执行不同的语句块。IF<条件表达式>语句块[ELSE语句块]说明:1.ELSE并不一定是必须的。2.条件为真,就执行IF语句后面的语句块,否则执行ELSE后面的语句块。3.

5、IF……ELSE可以嵌套。例如:编写程序完成如下功能:查看是否有1988年9月1日以后出生的学生。有则将输出该学生的姓名和学号,否则输出提示用户没有找到的信息。IFEXISTS(SELECT*FROM学生基本表WHERE出生日期>‘1988-9-1’)BEGINSELECT姓名,学号FROM学生基本表WHERE出生日期>‘1988-9-1’ENDELSEPRINT‘没有此信息’五、无条件转移语句GOTO标号……标号说明:1.GOTO语句会强迫服务器从标号处开始继续执行程序。2.标号必须出现在同一个存储过程或批处理中。标号和GOTO语句谁在代码中先出现不重要。3.对于GOTO的使用,尽可能不用

6、。六、循环语句WHILE条件表达式SQL语句块[BREAK]SQL语句块[CONTINUE]说明:[BREAK]表示退出所在的循环。[CONTINUE]表示结束本次循环,跳过循环体中尚未执行的语句,进行下一次是否执行循环体的判断。例如:计算1到100的和。DECLARE@IINT,@SINTSELECT@I=1SELECT@S=0WHILE@I<=100BEGINSELECT@S=@S+@ISELECT@I=@I+1ENDSELECT@S例如:计算1到100中奇数的和。DECLARE@NUMINT,@SUMINTSET@NUM=0SET@SUM=0WHILE@NUM<100BEGINSET@

7、NUM=@NUM+1IF@NUM%2=0CONTINUEELSESET@SUM=@SUM+@NUMENDPRINT@SUM这个程序中的CONTINUE是不能用BREAK来代替的。七、无条件退出RETURN说明:用于从批处理、语句块中无条件的退出,不执行位于RETURN后面的语句。

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

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

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