mysql变量作⽤_MySQL变量的⽤法
在编写存储过程中,有时需要使⽤变量,保存数据处理过程中的值
MySQL中,变量可以在⼦程序中,声明并使⽤,作⽤范围在BEGIN……END程序中
定义变量
在存储过程中,使⽤DECLARE语句,定义变量
语法格式
DECLARE var_name[,varname]……date_type[DEFAULT value]
参数说明
Var_name,为局部变量的名称
DEFAULT value,⼦句给变量提供⼀个默认值,该值除了可以声明为⼀个常数之外,还可以被指定为⼀个
表达式如果,没有DEFAULT⼦句,变量的初始值为NULL
定义⼀个名称为myvariable的变量,类型为INT类型,默认值为100
DECLARE myvariable INT DEFAULT 100;
使⽤SET为变量赋值
定义变量之后,为变量赋值,改变变量的默认值mysql存储过程使用
mysql中,使⽤SET语句为变量赋值
SET var_name=expr [,var_name=expr]……;
MySQL中
允许不同的变量类型,局域声明变量及全局变量,可以混合起来
允许把局部变量,和⼀些只对系统变量有意义的选项合并起来
SET a=x,b=y,……
声明三个变量,分别为var1、var2、var3,数据类型为INT,使⽤SET为变量赋值
DECLARE var1,var2,var3 int;
SET var1=10,var2=20;
SET var3=var1+var2;
使⽤SELECT……INTO为变量赋值
此外,除了使⽤SET为变量赋值
MySQL中,可以使⽤SELECT……INTO为⼀个或多个变量赋值
该语句可以把选定的列,直接存储到对应位置的变量
语法格式
SELECT col_name[……] INTO var_name [……] table_expr;
参数说明
Col_name,表⽰字段名称
Var_name,表⽰定义的变量名称
Table_expr,表⽰查询条件表达式,包括表名称和WHERE⼦句
声明变量s_grade和s_gender,通过SELECT……INTO语句,查询指定记录,并为变量赋值
上述语句,将student表中,name为rose的同学的成绩和性别,分别存⼊到了变量s_grade和s_gender中。