![数据库原理及应用: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=1739601233-DxeeKC7s2s3By7OSkWX5R7SErHmHzybK-0-b681febee62b7f50637b4344c56c2d79)
2)单击“执行”按钮,即可看到输出结果为:100。
2.标识符命名是否合法
1)在SMSS中单击“新建查询”按钮,并在打开的窗口中输入以下内容。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/71_05.jpg?sign=1739601233-ULJ80NyrmCY8gUG0kNCCFI9tDLAyFqzO-0-da1c759f6df5457ff037ea978ed7be5e)
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_01.jpg?sign=1739601233-osGK2FshDr97z0lzeKAyFnpPN7S5UciD-0-220c2e112bf7fb8d87ea9ca7b60abf9b)
2)单击“执行”按钮,查看输出结果。
3)将步骤1)中的输入内容清空,然后输入以下内容。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_03.jpg?sign=1739601233-Tomga8BkjovKmH2eCfZTADC1tHVXX8Ge-0-d1291feeb154ff62316bc155662f9095)
4)单击“执行”按钮,查看输出结果。
3.通过新建查询窗口,定义SQL Server支持的各种数据类型变量,并对变量进行赋值,使用运算符定义算术表达式和逻辑表达式
1)在新建的查询窗口中定义以下类型的变量并赋值。
① 字符串常量。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_05.jpg?sign=1739601233-LCwTBwpJk44iSL34BjKpn2I15zjNRUxw-0-6b2294aa1a46ad5a43c187f45ee2f120)
② 数据常量。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_06.jpg?sign=1739601233-9YRTYOqCnk75ZGSEhY4qLcTIesybCYHT-0-bf9adaf802f58cf3a0c6d439c575b6fc)
③ 日期类型。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_07.jpg?sign=1739601233-ks4efvk2h1W9ieCzCdUWZpkg3fBH7xnB-0-338dc54c9c0e6dc12b4acd11e2d93021)
2)在上述变量定义的基础上,计算表达式的值。
① 算术表达式。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_08.jpg?sign=1739601233-V7kDC9G54PNLq6ruuNWMOraGOXr3xANk-0-b3ce7754054f5a7fe5053b60af7c9124)
② 字符表达式。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_09.jpg?sign=1739601233-uRayxjpsLZqXIf4MyNRLyOKEhjuMhKMK-0-98afeccc1edec9c81b255b771c8a35d8)
3)按位运算表达式。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/72_10.jpg?sign=1739601233-FeHYzFhkBwkLSzqwUdzVypq4aMQ4M6I1-0-912d6379efa560cc77f62855cf846667)
4)单击“执行”按钮,执行结果如图2-11所示。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/73_02.jpg?sign=1739601233-y1BCQ3MssPEvV61rwOfUSsIjzc3RSl7g-0-d7f65bedace2c2b848eff2a7b39a7bc9)
图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=1739601233-q2FCX1U3lDnS0iX31L3URs4AUP74Oa8d-0-5e216c64682385ee96fdb6a01b94f020)
2)选中步骤1)中的脚本,并单击“执行”按钮。查看是否出错,如果出错,查找原因并修改错误,直到执行成功。
3)步骤1)中的脚本执行成功后,即函数创建成功,在窗口中输入以下语句。
![](https://epubservercos.yuewen.com/39535B/19549637508899006/epubprivate/OEBPS/Images/73_04.jpg?sign=1739601233-8TTNAAEf0yvjrD5WdBHlkmyl0di6moL5-0-2e0aed35d8be621df59edd4cfbbb620a)
4)选中步骤3)中的语句,并查看输出结果,输出的正确结果为:141.371667。
5)参考步骤1)~步骤3),完成圆柱体表面积函数的编写和调试。