- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL Server 2000中CASE语句与函数综合运用
SQL Server 2000中CASE语句与函数的综合运用
摘 要:在SQL Server 2000数据库中综合运用Transact―SQL语言的CASE语句与函数,可以方便灵活地解决多分支控制流程的问题。
关键词:SQL Server 2000 Transact―SQL语言 CASE语句 函数 综合运用
数据库是计算机应用的一项重要技术。随着计算机、网络通信等技术的发展,在网络多用户环境下对数据进行安全有效的管理已成为计算机的一项重要应用。SQL Server 2000是微软公司推出的基于SQL标准的关系型大型数据库管理系统。
它功能强大,易学易用,与Windows 2000相结合,可以构造网络环境数据库甚至分布式数据库,可以满足企业及Internet等大型数据库的应用,当前使用十分普遍。
SQL Server 2000系统所使用的SQL语言称为Transact―SQL。Transact―SQL是用于管理SQL Server 2000实例,创建和管理SQL Server 2000实例中的所有对象,并且插入、检索、修改和删除SQL Server 2000数据表中数据的命令语言,它是SQL Server 2000数据库管理系统的核心。
使用Transact―SQL脚本可以编写存储过程,完成建立和操作数据库、数据查询、数据管理等工作。Transact―SQL语言可以在SQL Server 2000提供的查询分析器上执行,查询分析器是一个具有执行SQL脚本、分析查询性能和调试存储过程等功能的管理工具。它是SQL Server 2000系统中最常用的操作管理工具,利用它可以输入、调试、运行SQL语句。
使用Transact―SQL的变量、运算符、函数和流程控制语句等基本语言元素,可以进一步丰富查询操作,实现数据库应用系统的复杂功能。
Transact―SQL语言中的CASE语句可以根据多个选择决定程序执行的流程。相当于if-else语句的嵌套,但结构更清楚。
简单CASE语句
?语法格式
CASE输入表达式
WHEN比较表达式THEN结果表达式[...n]
[ELSE最终结果表达式]
END
?功能将输入表达式的值与每一个比较表达式比较,若相等,则返回对应结果表达式的值;否则返回最终结果表达式的值。最终结果表达式也可以省略。输入表达式和每个比较表达式的数据类型必须相同,或者可以隐式转换。
[...n]表示可以使用多个“WHEN ... THEN”表达式子句。
例如:使用CASE语句根??输入的学生分数,输出对应的等级,这个问题如果用C语言的switch语句很好完成,C语言程序如下:
main()
{int score
printf(Please enter a score:);
scanf(%d,score);
printf(score=%d:,score)
switch(score/10)
{case 10:
case 9:printf(A/n);break;/*分数在90分以上,则输出A*/
case 8:printf(B/n);break;
case 7:printf(C/n);break;
case 6:printf(D/n);break;
default:printf(E/n);break;
}
}
若用Transact―SQL语言的CASE语句来做则会遇到一些问题,Transact―SQL语言大多数情况下是对表中数据进行操作,本例题中所使用的分数就来自于choice表,如按照C语言模式写成如下程序:
use teachdb
select sno,score=
case score/10
when 9 thenprint优
when 8 thenprint良
when 7 thenprint中
when 6 thenprint及
elseprint不及格
end
from choice go
则产生错误,因为sno是表中字段,它的运行结果会在“网格”标签内显示,而print命令是在查询分析器窗口的“消息”标签中显示用户信息。且该例中的print语句属于结果表达式,print语句的结果应赋值给score字段,而它们的类型又不匹配,所以这么设计在语法结构上就存在缺陷。第一次修改程序时,取消print语句改为score,以验证问题是否是因为类型不匹配造成的。修改后程序能正常运行说明语法上没有问题,但所有score字段的结果都显示为“NULL”,与预想的结果不符(预想
您可能关注的文档
- Flash动画内容特征分析与图像信息提取研究.doc
- Flash动画在3G初期移动学习中应用研究.doc
- Flash动画在PowerPoint中几种接入探讨.doc
- Flash动画在教学课件中应用.doc
- Flash文件在多媒体课件制作中应用.doc
- Flash课件在生物多媒体教学中应用.doc
- Flex在远程教学系统开发中应用研究.doc
- G71循环指令在宏程序编程中灵活应用.doc
- Games-to-Teach理念中外语类教育游戏概念模型设计.doc
- GE教师角色转换与ESP教学.doc
- 第12课 大一统王朝的巩固 课件(20张ppt).pptx
- 第17课 君主立宪制的英国 课件.pptx
- 第6课 戊戌变法 课件(22张ppt).pptx
- 第三章 物态变化 第2节_熔化和凝固_课件 (共46张ppt) 人教版(2024) 八年级上册.pptx
- 第三章 物态变化 第5节_跨学科实践:探索厨房中的物态变化问题_课件 (共28张ppt) 人教版(2024) 八年级上册.pptx
- 2025年山东省中考英语一轮复习外研版九年级上册.教材核心考点精讲精练(61页,含答案).docx
- 2025年山东省中考英语一轮复习(鲁教版)教材核心讲练六年级上册(24页,含答案).docx
- 第12课近代战争与西方文化的扩张 课件(共48张ppt)1.pptx
- 第11课 西汉建立和“文景之治” 课件(共17张ppt)1.pptx
- 唱歌 跳绳课件(共15张ppt内嵌音频)人音版(简谱)(2024)音乐一年级上册第三单元 快乐的一天1.pptx
文档评论(0)