数据库第5章资料优秀PPT.ppt

上传人:1398****507 文档编号:56531981 上传时间:2022-11-02 格式:PPT 页数:56 大小:1.07MB
返回 下载 相关 举报
数据库第5章资料优秀PPT.ppt_第1页
第1页 / 共56页
数据库第5章资料优秀PPT.ppt_第2页
第2页 / 共56页
点击查看更多>>
资源描述

《数据库第5章资料优秀PPT.ppt》由会员分享,可在线阅读,更多相关《数据库第5章资料优秀PPT.ppt(56页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、DLPU第第5章章T-SQL程序设计基础程序设计基础1.数据类型数据类型2.常量、变量和运算符常量、变量和运算符3.函数函数4.批处理和流程限制批处理和流程限制 数据类型数据类型 数据类型对应着数据类型对应着SQL Server 2008系统在内存或磁盘系统在内存或磁盘上开拓存储空间的大小,也确定了访问、显示、更新数据上开拓存储空间的大小,也确定了访问、显示、更新数据的方式。除了支持数值型、字符型、日期型、货币型等系的方式。除了支持数值型、字符型、日期型、货币型等系统供应的数据类型外,统供应的数据类型外,T-SQL还支持用户自定义数据类型。还支持用户自定义数据类型。系统供应的数据类型系统供应的

2、数据类型 SQL Server 2008中供应了丰富的数据类型,主要包括二进制、精确数中供应了丰富的数据类型,主要包括二进制、精确数字、近似数字、字符串、日期时间等几大类型。字、近似数字、字符串、日期时间等几大类型。类别数据类型类别数据类型类别数据类型二进制字符串BINARYVARBINARYIMAGE近似数字FLOATREAL日期时间DATETIMEDATE SMALLDATETIME精确数字BITINTBIGINTSMALLINTTINYINTDECIMALNUMERICMONEYSMALLMONEY字符串CHARVARCHARTEXTNCHARNVARCHARNTEXT其它类型TIMES

3、TAMPSQL_VARIANTTABLECURSORUNIQUEIDENTIFIERXML表5-1 SQL Server2008系统供应的数据类型 用户自定义数据类型用户自定义数据类型1创建用户自定义数据类型创建用户自定义数据类型系统存储过程系统存储过程sp_addtype可以创建用户自定义数据类型。可以创建用户自定义数据类型。【例【例5-1】在数据库】在数据库TSG中创建自定义数据类型中创建自定义数据类型Number,SMALLINT类型,允许空。类型,允许空。USE TSGGOEXEC sp_addtype Number,SMALLINT,NULL用户自定义数据类型用户自定义数据类型2查看

4、用户自定义数据类型查看用户自定义数据类型 存储过程存储过程sp_help可以查看用户自定义数据类型。可以查看用户自定义数据类型。【例【例5-2】查看】查看Number的特征。的特征。EXEC sp_help Number图图5-1 5-1 例例5-25-2的运行结果的运行结果用户自定义数据类型用户自定义数据类型3删除用户自定义数据类型删除用户自定义数据类型存储过程存储过程sp_droptype可以删除用户自定义数据类型。可以删除用户自定义数据类型。【例【例5-3】删除自定义的数据类型】删除自定义的数据类型Number。EXEC sp_droptype Number常量、变量和运算符常量、变量和

5、运算符v常量是一个常值,在程序运行中保持不变,一经定义程常量是一个常值,在程序运行中保持不变,一经定义程序本身不能变更其值。序本身不能变更其值。v变量是在程序运行过程中其值可以变更的量。变量是在程序运行过程中其值可以变更的量。常量常量 1字符串常量字符串常量 字符串常量括在单引号内,并包含字母数字字符(字符串常量括在单引号内,并包含字母数字字符(a-z、A-Z 和和 0-9)以及特殊字符如感叹号)以及特殊字符如感叹号(!)、at 符符()和数字号和数字号(#)。例如:例如:Cincinnati、O、Brien、Process X is 50%complete.字符串常量还可以接受字符串常量还可

6、以接受Unicode字符编码格式。字符编码格式。例如:例如:NA SQL String表示字符串表示字符串A SQL String是一个是一个Unicode字符串。字符串。常量常量 2二进制常量二进制常量 二进制常量具有前辍二进制常量具有前辍0 x并且是十六进制数字字符串。这些常量不并且是十六进制数字字符串。这些常量不运用引号括起。运用引号括起。例如,例如,0 xAE、0 x12Ef、0 x69048AEFDD010E、0 x(空二进制串)(空二进制串)常量常量 3日期日期/时间常量时间常量日期日期/时间常量运用特定格式的字符日期值来表示,并被单引号括起来。时间常量运用特定格式的字符日期值来表

7、示,并被单引号括起来。例如,例如,2010-12-05、12/05/2010、20101205 其次种依靠于其次种依靠于DATEFORMAT,是,是SQL Server默认的处理方式。默认的处理方式。常量常量 4数值常量数值常量1)整型常量)整型常量整型常量用不包含小数点的数字字符串来表示。必需全部为数字,它整型常量用不包含小数点的数字字符串来表示。必需全部为数字,它们不能包含小数。们不能包含小数。例如:例如:2356、8等都是整型常量。等都是整型常量。常量常量 4数值常量数值常量2)数值常量)数值常量数字常量分为精确数值常量和浮点常量。精确数值常量由没有用引号数字常量分为精确数值常量和浮点常

8、量。精确数值常量由没有用引号括起来并且包含小数点的数字字符串来表示。括起来并且包含小数点的数字字符串来表示。例如:例如:1894.1204和和2.0等。等。浮点常量运用科学记数法来表示。浮点常量运用科学记数法来表示。例如例如101.5E5和和0.5E-2等等常量常量 4数值常量数值常量3)货币常量)货币常量货币常量以前缀为可选的小数点和可选的货币符号不运用引号括起的货币常量以前缀为可选的小数点和可选的货币符号不运用引号括起的数字字符串来表示。数字字符串来表示。例如:例如:$12和和$542023.14都为货币常量,前面的货币符号都为货币常量,前面的货币符号“$”是可选是可选的。的。常量常量 4

9、数值常量数值常量4)uniqueidentifier常量常量UNIQUEIDENTIFIE常量是表示常量是表示GUID的字符串。可以运用字符或二的字符串。可以运用字符或二进制字符串格式指定。进制字符串格式指定。6F9619FF-8B86-D011-B42D-00C04FC964FF0 xff19966f868b11d0b42d00c04fc964ff变量变量1局部变量(局部变量(Local Variable)局部变量是用户自定义的变量,它的作用范围仅在定义它的程序局部变量是用户自定义的变量,它的作用范围仅在定义它的程序内部。局部变量名以内部。局部变量名以“”开头,用开头,用DECLARE吩咐进

10、行定义,吩咐进行定义,语法格式如下:语法格式如下:DECLARE 变量名变量名 变量类型变量类型,变量名变量名 变量类型变量类型运用运用SELECT或或SET吩咐来设置变量的值,语法格式如下:吩咐来设置变量的值,语法格式如下:SELECT 变量名变量名=变量值变量值 或者或者 SET 变量名变量名=变量值变量值变量变量1局部变量(局部变量(Local Variable)【例例5-4】声明一个存放名称的变量声明一个存放名称的变量Name,类型为,类型为char,长度为,长度为10,赋值,赋值“图书馆图书馆”并输出变量的值。并输出变量的值。DECLARE Name char(10)SELECT N

11、ame=图书馆图书馆PRINT Name图图5-2 5-2 例例5-45-4的运行结果的运行结果变量变量2全局变量(全局变量(Global Variable)不是由用户的程序定义的,是在服务器级定义的系统内部运用的变量,不是由用户的程序定义的,是在服务器级定义的系统内部运用的变量,任何程序均可以随时运用。引用全局变量必需以标记符任何程序均可以随时运用。引用全局变量必需以标记符“”开头。开头。全局变量含义CONNECTIONS返回自上次启动以来连接或试图连接的次数CURSOR_ROWS返回连接上最后打开的由表中当前存在的ERROR返回最后执行的 T-SQL 语句的错误代码 FETCH_STATU

12、S返回上一次FETCH语句的状态值IDENTITY返回最后插入的标识值MAX_CONNECTIONS返回SQL上允许的同时用户连接的最大数。PROCID返回当前存储过程的ID值OPTIONS返回当前 SET 选项的信息ROWCOUNT返回受上一语句影响的行数,任何不返回行的语句将这一变量设置为0SERVERNAME返回运行SQL服务器名称SERVICENAME返回SQL Server正运行于哪种服务状态之下,如 MS SQL Server,MSDTC,SQL Server AgentSPID返回当前用户进程的服务器进程标识符TRANCOUNT返回当前连接的活动事务数VERSION返回SQL S

13、erver的版本信息表表5-2 常用的全局变量常用的全局变量变量变量2全局变量(全局变量(Global Variable)【例【例5-5】修改】修改TSG数据库的数据库的Book表中某条记录的书号表中某条记录的书号“CallNo”,用,用ERROR检测主键冲突。检测主键冲突。USE TSGGOUPDATE Book SET CallNo=F121/L612WHERE CallNo=G0/Z810IF ERROR=2627 PRINT A constraint violation occurred图图5-3 5-3 例例5-55-5的运行结果的运行结果变量变量2全局变量(全局变量(Global

14、Variable)【例【例5-6】查看】查看SQL Server的版本号。的版本号。SELECT VERSION图图5-4 5-4 例例5-65-6的运行结果的运行结果【例【例5-7】ROWCOUNT的运用。的运用。USE TSGGOUPDATE BOOK SET Title=ZDMAWHERE CallNo=999-888-7777IF ROWCOUNT=0print Warning:No rows were updated图图5-5 5-5 例例5-75-7的运行结果的运行结果注释与输出注释与输出 1注释注释注释语句不是可执行的语句,不参与程序的编译。注释语句不是可执行的语句,不参与程序的

15、编译。作用:说明代码的功能或对代码的实现方式给出简要的说作用:说明代码的功能或对代码的实现方式给出简要的说明或提示。明或提示。对对T-SQL语句进行注释有两种方法:语句进行注释有两种方法:v运用运用“-”进行单行注释。进行单行注释。v利用利用“/*/”进行块注释。进行块注释。注释与输出注释与输出 2输出输出vPRINT语句可干脆显示表达式结果语句可干脆显示表达式结果RAISERROR(msg_id|msg_str,SEVERITY,STATE,argumentl,n)vRASERROR函数将错误信息显示在屏幕上,同时也可以函数将错误信息显示在屏幕上,同时也可以记录在日志中。记录在日志中。RAS

16、EERROR函数的基本语法格式如下:函数的基本语法格式如下:msg_id:错误号,省略时系统将产生一个错误号为:错误号,省略时系统将产生一个错误号为50000的错误消息;的错误消息;msg_str:错误信息;:错误信息;SEVERITY:错误的严峻级别;:错误的严峻级别;STATE:说明发生错误时的状态信息。:说明发生错误时的状态信息。注释与输出注释与输出 2输出输出【例【例5-8】查询索书号为】查询索书号为F121/L612的书籍数量,假如的书籍数量,假如1本以本以上,则显示数量上,则显示数量1本以上,否则输出库存不足信息。本以上,否则输出库存不足信息。USE TSGGODECLARE Ca

17、llNo varchar(9),Title varchar(40),Number smallintSET CallNo=qqSELECT Title=Title,Number=NumberFrom BookWhere CallNo=CallNoIF(Number 1)PRINT Title+1本以上。本以上。ELSE RAISERROR(库存不足库存不足,报警!报警!,10,1)运算符运算符运算符用来执行数据之间的数学或比较运算,是指定运算符用来执行数据之间的数学或比较运算,是指定要在一个或者多个表达式中执行操作的一种符号。要在一个或者多个表达式中执行操作的一种符号。T-SQL中运算符主要有中

18、运算符主要有6大类:大类:v算术运算符算术运算符v赋值运算符赋值运算符v位运算符位运算符v比较运算符比较运算符v逻辑运算符逻辑运算符v字符串串联运算符字符串串联运算符运算符运算符1算术运算符算术运算符 包括:加(包括:加(+)、减()、减(-)、乘()、乘(*)、除()、除(/)和取模()和取模(%)等。)等。【例【例5-9】SELECT+3+2 加法加法SELECT-4-1 减法减法SELECT-5*2 乘法乘法SELECT 10/2 整数相除整数相除,10.0/2 小数除法小数除法SELECT 10%2 取余取余图图5-7 5-7 例例5-95-9的运行结果的运行结果运算符运算符2赋值运算

19、符赋值运算符“=”:将数据值指派给特定的对象。:将数据值指派给特定的对象。3位运算符位运算符 操作数:整型或者二进制数据操作数:整型或者二进制数据(IMAGE类型除外类型除外)包括:位与(包括:位与(&)、位或()、位或(|)、位异或()、位异或()和位非()等。)和位非()等。运算符运算符4比较运算符比较运算符 比较两个表达式的大小或是否相同,其比较的结果:比较两个表达式的大小或是否相同,其比较的结果:TRUE(表示表达式的结果为真)(表示表达式的结果为真)FALSE(表示表达式的结果为假)(表示表达式的结果为假)UNKNOWN除了除了TEXT、NTEXT 或或 IMAGE 数据类型的表达式

20、外,数据类型的表达式外,比较运算符可以用于全部其它表达式。比较运算符可以用于全部其它表达式。运算符运算符5逻辑运算符逻辑运算符 把多个逻辑表达式连接起来。包括把多个逻辑表达式连接起来。包括AND、OR和和NOT。运算结果:运算结果:TRUE 或或 FALSE 值的布尔数据类型。值的布尔数据类型。6字符串串联运算符字符串串联运算符 加号加号(+),可以进行字符串串联。,可以进行字符串串联。例如,表达式例如,表达式ab+cd的结果为的结果为abcd。函数函数函数是一组编译好的函数是一组编译好的T-SQL语句,语句,SQL Server支持两种支持两种函数类型:函数类型:内置函数:是一组预定义函数,

21、是内置函数:是一组预定义函数,是T-SQL语言的一部分,语言的一部分,用户可以干脆运用它们实现希望的功能。用户可以干脆运用它们实现希望的功能。用户定义函数用户定义函数:是由用户自行定义并编写的函数,用户:是由用户自行定义并编写的函数,用户可以依据须要编写和修改自定义函数,然后进行调用。可以依据须要编写和修改自定义函数,然后进行调用。常用内置函数常用内置函数SQL Servr 2008中的函数或许分为中的函数或许分为7类:类:v数学函数数学函数v字符串函数字符串函数v日期时间函数日期时间函数v聚集函数聚集函数v转换函数转换函数v系统函数系统函数v用户自定义函数用户自定义函数常用内置函数常用内置函

22、数1字符串函数字符串函数 函数UPPER(str)ASCII(str)REPLICATE(str,n)CHAR(n)PATINDEX(%pattern%,str)CHARINDEX(str1,str2,start)LEN(str)STUFF(str1,start,length,str2)REVERSE(str)SUBSTRING(str,start,length)SPACE(n)LTRIM(str)LEFT(str,n)RTRIM(str)RIGHT(str,n)LOWER(str)STR(f,p,s)表表5-3 常用字符串函数常用字符串函数 常用内置函数常用内置函数1字符串函数字符串函数【例

23、【例5-11】删除字符串变量中起始处的空格。】删除字符串变量中起始处的空格。DECLARE Str1 VARCHAR(40)SET Str1=TWO SPACES BEFORE THIS STRINGSELECT Str1SELECT THE RESULT IS:+LTRIM(Str1)图图5-9 5-9 例例5-115-11的运行结果的运行结果常用内置函数常用内置函数1字符串函数字符串函数【例【例5-12】编写一段程序输出数值】编写一段程序输出数值147.58的整数和小数部分。的整数和小数部分。DECLARE Str CHAR(18),Pos SMALLINTSET Str=STR(147.

24、58,6,2)SET Pos=CHARINDEX(.,STR)PRINT RTRIM(Str)+的整数部分是:的整数部分是:+LEFT(Str,Pos-1)PRINT RTRIM(Str)+的小数部分是:的小数部分是:+RIGHT(RTRIM(Str),LEN(RTRIM(Str)-pos+1)图图5-10 5-10 例例5-125-12的运行结果的运行结果常用内置函数常用内置函数2 数学函数数学函数函数函数ABS(n)MOD(m,n)ACOS(n)PI()ASIN(n)POWER(m,n)ATAN(n)RADIANS(n)CEILING(n)RAND()COS(n)ROUND(m,n)DEG

25、REES(n)SIGN(n)EXP(n)SIN(n)FLOOR(n)SQRT(n)LOG(n)SQUARE(n)LOG10(n)TAN(n)表表5-4 常用数学函数常用数学函数 常用内置函数常用内置函数2数学函数数学函数【例【例5-13】对同一数值运用】对同一数值运用FLOOR、CEILING和和ROUND函数。函数。SELECT FLOOR(1.2345),CEILING(1.2345),ROUND(1.2345,3)图图5-11 5-11 例例5-135-13的运行结果的运行结果常用内置函数常用内置函数3日期和时间函数日期和时间函数函数GETDATE()DATEPART(datepart,

26、date)DATENAME(datepart,date)DAY(date)MONTH(date)YEAR(date)DATEADD(datepart,number,date)DATEDIFF(datepart,date1,date2)表表5-5 常见的日期和时间函数常见的日期和时间函数 常用内置函数常用内置函数3日期和时间函数日期和时间函数【例【例5-14】获得系统当前日期,并分别提取出月、日和年。】获得系统当前日期,并分别提取出月、日和年。SELECT MONTH(GETDATE()月月,DAY(GETDATE()日日,YEAR(GETDATE()年年SELECT DATENAME(MONT

27、H,GETDATE()月月,DATENAME(DAY,GETDATE()日日,DATENAME(YEAR,GETDATE()年年SELECT DATEPART(MONTH,GETDATE()月月,DATEPART(DAY,GETDATE()日日,DATEPART(YEAR,GETDATE()年年图图5-12 5-12 例例5-145-14的运行结果的运行结果常用内置函数常用内置函数3日期和时间函数日期和时间函数【例【例5-15】计算】计算2006年年9月月1日到当前日期经验了多少天数、日到当前日期经验了多少天数、多少月和多少周。多少月和多少周。SELECT DATEDIFF(DAY,2006-

28、9-1,GETDATE()天数天数,DATEDIFF(MONTH,2006-9-1,GETDATE()月数月数,DATEDIFF(WEEK,2006-9-1,GETDATE()周数周数 图图5-13 5-13 例例5-155-15的运行结果的运行结果常用内置函数常用内置函数4转换函数转换函数能够完成某些数据类型的转换。能够完成某些数据类型的转换。(1)CAST(expression,type):将表达式将表达式expression转换为指定的转换为指定的type数据类型。数据类型。(2)CONVERT(type(length),expression,style):type为为expressio

29、n转换后的数据类型;转换后的数据类型;length表示转换后的数据长度;表示转换后的数据长度;style将日将日期时间类型的数据转换为字符型的数据时,该参数用于指定转换后的样式。期时间类型的数据转换为字符型的数据时,该参数用于指定转换后的样式。常用内置函数常用内置函数4转换函数转换函数【例例5-16】将将/3转换成相应度数对应的字符串。转换成相应度数对应的字符串。SELECT CONVERT(VARCHAR,DEGREES(PI()/3)度数度数1,CAST(DEGREES(PI()/3)AS VARCHAR)度数度数2图图5-14 5-14 例例5-165-16的运行结果的运行结果常用内置函

30、数常用内置函数5系统函数系统函数函数DB_ID(name),DB_NAME(id)HOST_ID(name),HOST_NAME(id)OBJECT_ID(name),OBJECT_NAME(id)SUSER_ID(name),SUSER_NAME(id)USER_ID(name),USER_NAME(id)COL_NAME(table_id,col_id)COL_LENGTH(table,col)INDEX_COL(table,index_id,key_id)DATALENGTH(expression)表表5-7 部分系统函数部分系统函数 常用内置函数常用内置函数5系统函数系统函数【例【例5

31、-17】利用系统函数获得一些信息。】利用系统函数获得一些信息。SELECT CURRENT_USER 当前用户当前用户,DATALENGTH(数据库数据库)长度长度,HOST_NAME()计算机名计算机名,SYSTEM_USER 当前登录用户名当前登录用户名,USER_NAME(1)依据依据ID返回用户名返回用户名图图5-15 5-15 例例5-175-17的运行结果的运行结果批处理批处理v“批批”:是从客户端传递给服务器的一组完整的数据和:是从客户端传递给服务器的一组完整的数据和SQL指指令的集合,从应用程序一次性的发送到令的集合,从应用程序一次性的发送到SQL Server执行。执行。v“

32、GO”:是批处理的标记,两个:是批处理的标记,两个“GO”之间的之间的T-SQL语句称为语句称为一个批处理。一个批处理。【例例5-21】创建数据库创建数据库TSG,并将当前数据库切换到,并将当前数据库切换到TSG。CREATE DATABASE TSGUSE TSG是否能成功执行?是否能成功执行?CREATE DATABASE TSGGOUSE TSG正确的做法是:正确的做法是:批处理批处理考虑如下程序:考虑如下程序:DECLARE MyVar varchar(50)-该变量声明仅在该该变量声明仅在该批批中有效。中有效。SELECT MyVar=今日天气真不错!今日天气真不错!PRINT 第一

33、个批处理执行结束第一个批处理执行结束GOPRINT MyVar-将产生错误,因为将产生错误,因为MyVar在该在该批批中未经定义而干中未经定义而干脆运用。脆运用。PRINT 其次个批处理执行结束其次个批处理执行结束GOPRINT 第三个批处理执行结束第三个批处理执行结束 GO批处理批处理批处理要留意以下几个问题:批处理要留意以下几个问题:(1)并非全部语句都可以和其它语句组合在一个批中。)并非全部语句都可以和其它语句组合在一个批中。CREATE DEFAULT,CREATE PROCEDURE,CREATE RULE,CREATE TRIGGER,CREATE VIEW必需独自成批处理,不能够

34、与其他语句组必需独自成批处理,不能够与其他语句组合运用。合运用。(2)假如)假如 EXECUTE 语句是批处理中的第一句,则不须要语句是批处理中的第一句,则不须要EXECUTE关关键字;否则须要键字;否则须要EXECUTE关键字。关键字。(3)RULE和和DEFAULT不能在同一个批处理中绑定列同时又被运用。不能在同一个批处理中绑定列同时又被运用。(4)CHECK约束不能在同一批处理中既定义又运用。约束不能在同一批处理中既定义又运用。(5)用)用SET语句变更的项,在批处理结束时生效。语句变更的项,在批处理结束时生效。(6)在同一批处理中,不能修改一个表的某些列后立刻运用这些新列。)在同一批处

35、理中,不能修改一个表的某些列后立刻运用这些新列。流程限制流程限制 流程限制语句:流程限制语句:通过推断指定的某些值来限制程序运行方向的语句。通过推断指定的某些值来限制程序运行方向的语句。包括包括:BEGINENDIFELSECASEWHILEGOTOWAITFOR流程限制流程限制 1BEGINEND:能够将多个能够将多个T-SQL语句组合成一个语句组合成一个语句块,并将它们视为一个单元处理。语句块,并将它们视为一个单元处理。其语法格式为:其语法格式为:BEGINSQL语句语句|语句块语句块 END流程限制流程限制 2IFELSE:条件推断语句,:条件推断语句,ELSE子句可选。子句可选。语法格

36、式为:语法格式为:IF|BEGIN ENDELSE|BEGIN END流程限制流程限制 3CASE:可以计算多个条件式,并将其中一个符合条可以计算多个条件式,并将其中一个符合条件的结果表达式返回。件的结果表达式返回。CASE语句只能嵌入到语句只能嵌入到SELECT语语句的句的SELECT子句中。子句中。CASE语句有两种格式。语法格式语句有两种格式。语法格式1:CASE 表达式表达式 WHEN 表达式表达式_11 THEN 表达式表达式_12 WHEN 表达式表达式_n1 THEN 表达式表达式_n2 else 表达式表达式_mEND流程限制流程限制 3CASE:语法格式:语法格式1【例【例5

37、-22】在在Patron表中,选取姓王读者的表中,选取姓王读者的Name(读者姓名)和(读者姓名)和Gender(性别),假如(性别),假如Gender的值为的值为男男,则输出,则输出M;为;为女女,则输出,则输出F。USE TSGGOSELECT Name,性别性别=CASE Gender WHEN 男男 THEN M WHEN 女女 THEN F ENDFROM PatronWHERE Name LIKE 王王%图图5-17 5-17 例例5-225-22的运行结果的运行结果流程限制流程限制 3CASE 语法格式语法格式2:CASE WHEN 条件表达式条件表达式_1 THEN 表达式表达

38、式_1 WHEN 条件表达式条件表达式 _n THEN 表达式表达式_n else 表达式表达式_mEND流程限制流程限制 3CASE:语法格式:语法格式2【例【例5-23】在】在Book表中,选取姓表中,选取姓“周周”的作者所编著图书的的作者所编著图书的Title(书名)(书名)和和Number(数量),假如(数量),假如Number的值大于的值大于3,则输出,则输出“多多”,否则输出,否则输出“少少”。USE TSGGOSELECT Title 书名书名,CASE WHEN Number3 THEN 多多 ELSE 少少 END 数量数量FROM BookWHERE Author LIKE

39、 周周%图图5-18 5-18 例例5-235-23的运行结果的运行结果流程限制流程限制 4WHILECONTINUEBREAK:用于设置按条件重用于设置按条件重复执行复执行SQL语句或语句块。只要指定的条件为真,就重复语句或语句块。只要指定的条件为真,就重复执行语句。执行语句。其语法格式为:其语法格式为:WHILE 条件表达式条件表达式BEGIN SQL语句语句|语句块语句块 BREAK CONTIUNE SQL语句语句|语句块语句块ENDCONTINUE语句:可以使程序跳过语句:可以使程序跳过CONTINUE语句后面的语句,接着进行语句后面的语句,接着进行下一次循环。下一次循环。BREAK

40、语句:使程序完全跳出循环,语句:使程序完全跳出循环,结束结束WHILE语句的执行。语句的执行。流程限制流程限制 5GOTO:可以使程序干脆跳转到指定的标有标识符的:可以使程序干脆跳转到指定的标有标识符的位置处接着执行。位置处接着执行。语法格式为:语法格式为:GOTO labelDECLARE sum SMALLINT,i SMALLINTSET i=1;SET sum=0;BEG:IF(i=100)BEGIN SET sum=sum+i;SET i=i+1 GOTO BEGENDPRINT sum【例【例5-24】求】求1100的累加和。的累加和。流程限制流程限制 例例5-24,还可以用,还可

41、以用WHILE循环语句来实现,其代码如下循环语句来实现,其代码如下:DECLARE sum SMALLINT,i SMALLINTSET i=1;SET sum=0;WHILE(i=100)BEGIN SET sum=sum+i;SET i=i+1ENDPRINT sum流程限制流程限制 6WAITFOR:WAITFOR语句用来短暂停止程序执行,语句用来短暂停止程序执行,直到所设定的等待时间已过或所设定的时间已到才接着往直到所设定的等待时间已过或所设定的时间已到才接着往下执行。下执行。语法格式为:语法格式为:WAITFOR DELAY time|TIME timeUSE TSGGOWAITFOR DELAY 00:00:30 DELETE FROM Book WHERE CallNo=12345【例【例5-25】等待】等待30秒后再执行秒后再执行DELETE语句。语句。图图5-19 5-19 例例5-255-25的运行结果的运行结果

展开阅读全文
相关资源
相关搜索

当前位置:首页 > pptx模板 > 商业计划书

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com