![数据库原理及应用:SQL Server 2016](https://wfqqreader-1252317822.image.myqcloud.com/cover/996/36861996/b_36861996.jpg)
2.6 实验2 常量、变量、函数和表达式的应用
2.6.1 实验目的
1)掌握常量、变量的基本概念和命名规则。
2)学会用SQL Server的SSMS进行变量定义、赋值和运算。
3)掌握SQL Server的常用全局变量和用法。
4)理解并掌握SQL Server的各种数据类型和用法。
5)掌握SQL Server的常用函数和用法,了解自定义函数的步骤和方法。
6)掌握SQL Server的常用运算符和表达式用法,能根据要求写出表达式并求值。
2.6.2 实验内容
1)使用SMSS新建查询和执行SQL脚本。
2)检验标识符命名标识是否合法。
3)通过新建查询窗口,定义SQL Server支持的各种数据类型变量,并对变量进行赋值,使用运算符定义算术表达式和逻辑表达式。
4)输出SQL Server全局变量。
5)使用SQL Server内置函数进行计算。
*6)编写自定义函数,并实现定义和调用。
2.6.3 实验练习
1.使用SMSS新建查询和执行SQL脚本
1)在SMSS中单击“新建查询”按钮,并在打开的窗口中输入以下内容。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/71_02.jpg?sign=1739592071-YGMlPIBuD0B4vZdK3fpX4T3p34dVOgtq-0-e5a2f8824836230da09c3f001337d592)
2)单击“执行”按钮,即可看到输出结果为:100。
2.标识符命名是否合法
1)在SMSS中单击“新建查询”按钮,并在打开的窗口中输入以下内容。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/71_05.jpg?sign=1739592071-uXoYGV04sGmZlLnmNBxkHiMohEQocDPR-0-6b44674478c2495fa4959ff9765f1072)
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_01.jpg?sign=1739592071-xaHWat8H8ZMgaFCymnqE4SVSgSxay9GT-0-e1df3b17134cc6b6fe4ac29176f23a47)
2)单击“执行”按钮,查看输出结果。
3)将步骤1)中的输入内容清空,然后输入以下内容。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_03.jpg?sign=1739592071-zhLm8PJLTgd7AGoJMp8BKvWDiEDgwWQg-0-be66e9bea5101950bd602e2e0a6eed12)
4)单击“执行”按钮,查看输出结果。
3.通过新建查询窗口,定义SQL Server支持的各种数据类型变量,并对变量进行赋值,使用运算符定义算术表达式和逻辑表达式
1)在新建的查询窗口中定义以下类型的变量并赋值。
① 字符串常量。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_05.jpg?sign=1739592071-Kv97UTcUrHmWUkmMmY20s4iWoA82qqSL-0-3d5b99ed063f1680bb549687aed0d47f)
② 数据常量。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_06.jpg?sign=1739592071-fTXBcFIjMhVYaFOihpR8yrmTMqrKKFdO-0-bf703147cdc1ae37256ccc4fdb27ce3a)
③ 日期类型。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_07.jpg?sign=1739592071-vqCSnLm9GlQEsyJP2gy5JnHIbAj16XOR-0-204787469320dceb25c96978a2b82e68)
2)在上述变量定义的基础上,计算表达式的值。
① 算术表达式。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_08.jpg?sign=1739592071-9BSTssJByR5rwo9FXVkcyitpj3K9BTvT-0-4f75e36be18f14e7226d6531d8939f04)
② 字符表达式。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_09.jpg?sign=1739592071-5g4lt343ofUy4gpzC074L5EYXO8SySYf-0-5ca7bdbd3ee10f5aa9ca15268779d815)
3)按位运算表达式。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_10.jpg?sign=1739592071-UlIDqtfFYOzLWIw00HW0gINe7EZDIbxl-0-c0db035049cdaa9e12033f27919a7920)
4)单击“执行”按钮,执行结果如图2-11所示。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/73_02.jpg?sign=1739592071-TNBVICLPt4mh97PClqHirVumLpK0rgOl-0-5ff42257d1958cd72d261fa258f555d0)
图2-11 执行结果
4.使用SMSS新建查询,依次输入表2-24中的全局变量,查看输出结果
5.使用SQL Server中的内置函数进行计算
1)聚合函数练习。将书中的图书馆数据库导入SQL Server中,基于Libaray数据库练习表2-26中的聚合函数,并查看输出结果。
2)基于表2-27练习常用的数学函数,并查看输出结果。
3)基于表2-29练习常用的字符函数,并查看输出结果。
4)基于表2-30练习常用的日期时间函数,并查看输出结果。
6.编写自定义函数,并实现定义和调用
假设圆柱体的底面半径为r,高为h,编写函数求圆柱体的体积和表面积。并调用上述两个函数,分别求r=3、h=5的圆柱体的体积和表面积。
1)在SMSS单击“新建查询”按钮,在打开的窗口中输入以下内容。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/73_03.jpg?sign=1739592071-K3cfshvlrMnIJxAL2O7lrnVyQH6PLVdu-0-37e4fbc935af36de7d1c81908f25ebf7)
2)选中步骤1)中的脚本,并单击“执行”按钮。查看是否出错,如果出错,查找原因并修改错误,直到执行成功。
3)步骤1)中的脚本执行成功后,即函数创建成功,在窗口中输入以下语句。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/73_04.jpg?sign=1739592071-dSjQWWhZCENAa743Ut6fTi6WALvxnGlC-0-0a93c325f4c4d7a3038a8d4f3c2b5ba4)
4)选中步骤3)中的语句,并查看输出结果,输出的正确结果为:141.371667。
5)参考步骤1)~步骤3),完成圆柱体表面积函数的编写和调试。