储存过程中的变量

要在存储过程中声明一个变量,可以使用DECLARE语句,如下所示:

DECLARE variable_name datatype DEFAULT default_value;
  • 下面来更详细地解释上面的语句:

    • 首先,在DECLARE关键字后面要指定变量名。变量名必须遵循MySQL表列名称的命名规则。
    • 其次,指定变量的数据类型及其大小。变量可以有任何MySQL数据类型,如INT,VARCHAR,DATETIME等。
    • 第三,当声明一个变量时,它的初始值为NULL。但是可以使用DEFAULT关键字为变量分配默认值。

例如:可以声明一个名为total_sale的变量,数据类型为INT,默认值为0,如下所示:

DECLARE total_sale INT DEFAULT 0;

设置变量值

DECLARE total_count INT DEFAULT 0;
SET total_count = 10;

除了SET语句之外,还可以使用SELECT INTO语句将查询的结果分配给一个变量。

DECLARE total_products INT DEFAULT 0;

SELECT COUNT(*) INTO total_products FROM students;

示例

delimiter //
create procedure proc_stu_2()
begin
DECLARE total_count INT DEFAULT 0;   
SET total_count = 10;
select * from students;
end
//
delimiter ;
数据库基础 all right reserved,powered by Gitbook文件修订时间: 2018-05-09 16:29:31