1.变量
变量就是在执行过程中可变的数据,“变”的意思就是在执行时可以因需要而改变,故名为变量。变量是一种语言必不可少的组成部分。一个变量的组成包括名称、类型和数据,其中类型可以是SQL Server提供的数据类型。T⁃SQL语言中有两种形式的变量,一种是用户自己定义的局部变量,另外一种是系统提供的全局变量。
(1)局部变量
局部变量是一个能够拥有特定数据类型的对象,它的作用范围仅限制在程序内部。局部变量可以作为计数器来计算循环执行的次数,或是控制循环执行的次数。另外,利用局部变量还可以保存数据值,以供控制流语句测试以及保存由存储过程返回的数据值等。局部变量被引用时要在其名称前加上“@”标志,而且必须先用DECLARE语句声明,通过SELECT语句或SET语句给它们赋值,然后在声明它的语句、批处理或过程中使用,当批处理或过程执行完后它就丢失。
●声明局部变量的语句如下。
其中,VARIABLE_NAME为局部变量的名称,DATATYPE为数据类型。
【例2-1】 定义变量@NAME和@SEAT。
●局部变量赋值有两种方法:使用SET语句或SELECT语句,语法如下。
或
说明:
1)SET赋值语句一般用于赋给变量指定的数据常量。
2)SELECT赋值语句一般用于从表中查询数据,然后再赋给变量。需要注意的是,SE-LECT语句需要确保筛选的记录不多于一条。如果查询的记录多余一条,将把最后一条记录的值赋给变量。
【例2-2】 下面定义两个变量@var1,@var2,并进行赋值。
(2)全局变量
全局变量由系统定义和维护,用户直接使用,但一般不自定义全局变量。SQL Server中的所有全局变量都是用“@@”标志作为前缀。
【例2-3】 使用全局变量@@servername来显示服务器的名称。
【例2-4】 把学号为20090103的成绩改为89,@@rowcount全局变量表示上一条语句所影响的行数。(www.xing528.com)
说明:变量名的返回如表2-4所示。
表2-4 变量名及其返回
2.常量
常量指固定不变的数据,但在SQL Server中数据称为常量。用SET语句赋给变量的数据,就可视为常量。所以,这时的常量,其实是指各种不同数据类型的数据表示法。
(1)字符常量
若是字符型数据,对于一般字符应在前后加上英文单引号′,若是Unicode字符,应加上N。如:
注意:
若应用环境中以网页连接SQLServer数据库,则字段的数据类型和在T-SQL中处理数据时,应尽量使用Unicode字符。
(2)二进制常量
二进制数据的表示法是以0x开头,其后的长度不定,不必使用单引号。例如:
(3)数字常量
所有数字数据在表示时,也不需使用单引号,且数字数据又有多种类型,分为整数和小数,又有一般数字和货币值等,例如:
以上程序中首先声明两个变量,类型分别是int和money,int是整数,money可以含有小数点和货币符号,其他可以是小数点的数字类型还有decimal、real和float等。
(4)日期和时间常量
日期和时间数据都必须加上单引号,可以是各种合法的格式,例如:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。