
上QQ阅读APP看书,第一时间看更新
4.2.3 变量
根据变量的作用范围,可将其分为两种,一种是用户自定义的局部变量,另一种是系统提供的全局变量。
(1)局部变量的定义。
用DECLARE语句声明局部变量,所有局部变量在声明后均初始化为NULL。局部变量在被引用时要在其名称前加上符号“@”。
定义局部变量的语法格式为:

各参数含义说明如下:
variable_name:局部变量名,“@”表示是局部变量。
data_type:数据类型,用于定义局部变量的类型,可为系统类型或自定义类型。
n:表示可定义多个局部变量,各变量间用逗号隔开。
(2)局部变量的赋值。
当声明局部变量后,可用SET或SELECT语句对其赋值。
局部变量赋值的语法格式为:

(3)变量内容的显示。
显示变量内容的语法格式为:

【例4.2】声明两个字符型变量,并分别对其赋值。
相应T-SQL语句如下:

全局变量是SQL Server系统内部使用的变量,其作用范围并不局限于某一程序,而是任何程序都可以调用,并通过在名称前加两个“@”符号以区别于局部变量。全局变量通常存储一些SQL Server的配置设定值和统计数据。
局部变量的名称不能与全局变量的名称相同,否则会在应用程序中出现不可预测的结果。