1.有效标识符
@开头的标识符表示这是一个局部变量或是一个函数的参数
@@全局变量
#开头的标识符表示这是一个临时表或是一个存储过程
##开头的标识符表示这是一个全局的临时数据库对象
2.注释
(1)多行注释/**/ (2) 单行注释 --声明局部变量
3.数据类型
常见数据类型 binary[(n)]---/--int---/--decimal[(p[,s])]---/---varchar[(n)]--/----datetime---/----bit---/
-------------------------------------------------------------------------------------------------------------------------------------------------
4.T-SQL的表达式和其他高级语言的表达式一样,有常量,变量,函数和运算符构成。
5.变量
(1)局部变量
DECLARE变量声明语句
DECLARE @变量名1 数据类型,@变量名2 数据类型,。。。,@变量名n 数据类型
SELECT 赋值语句
SELECT @变量名1 =表达式1,@变量名2=表达式2,。。。,@变量名n=表达式n
说明:使用SELECT命令可以一次给多个变量赋值。当表达式为表的列名时,可使用子查询功能从表中一次返回多个值,变量中保存的是其返回的最后一个值。如果子查询没有返回值,则变量值被设为NULL。
SET赋值语句
SET @变量名=表达式
区别用SET 赋值语句 “SET @count=(SELECT COUNT(*) FROM Student)”和用“SELECT 赋值语句"SELECT @var1=Rname FROM Reader"查询语法的不同”
SET赋值只能给一个变量赋值 SELECT 赋值语句可以给多个变量赋值
-----------------------------何时使用哪一种----------------------
当执行一个简单的变量赋值的时候,使用SET赋值语句
当基于查询进行变量赋值时,使用SELECT赋值语句
(2)全局变量
全局变量是SQL SERVER 系统提供并赋值的变量。用户不能建立全局变量,也不能用SET赋值语句和SELECT赋值语句修改全局变量的值。通常全局变量的值赋给局部变量,以便保存和处理。@@severname表示服务器名,@@ersion提供SQL SERVER 的版本信息。