局 部 变 量 一、 局部变量 局部变量一般出现在批处理、存储过程或触发器中
使用前必须用DECLARE 语句定义
生存周期:仅生存于声明它的批处理、存储过程或触发器中,处理结束后,其中的信息将丢失
必须提供变量名和数据类型 变量名前必须有个@符
变量名最长不超过30 个字符
如需要声明多个局部变量,可只用一个DECLARE 语句
变量间用“,”隔开
格式: DECLARE @变量名 数据类型[,···] 二、为局部变量赋初值 1、 用SELECT 语句 SELECT @变量名=表达式[,···] [ FROM ] [ WHERE ] 变量没赋值前为 NULL 值,如果在循环中使用它必须为其赋值
一条 SELECT 语句只能返回一行,如果返回多行只将最后一行的值赋给局部变量
由于使用不同的索引得到相同的结果,所以不好确定哪条记录是最后一条记录,这时可使用ORDER BY 子句
若包含了 FROM 子句,可用以下两种方法保证 SELECT语句返回一条记录
1) 在 WHERE 子句中使用关键码(主码) 2) SELECT 字段列表中使用一个集合函数
例:赋值语句的各种表达形式 USE 教学库 GO SELECT * FROM STU DECLARE @PTR int , @sum int ,@xh char(4),@xm char(8), @TWO_XH CHAR(4),@TWO_XM CHAR(8) --------------------------- SELECT @SUM=10 --------------------------- SELECT @XH=学号,@XM=姓名 FROM STU ----------------------------- SELECT @TWO_XH=学号,@TWO_XM=姓名