位置:首页 > 软件操作教程 > 数据分析 > MySQL > 问题详情

MySQL——局部变量

提问人:刘旭39发布时间:2020-10-13

局部变量

1、声明变量:在存储过程中可以声明局部变量,它们可以用来存储临时结果,并且只能用于该存储过程;只能在begin…end语句块中声明。

必须使用declare语句


2、语法格式

declare var_name type [default value]

其中,var_name为变量名;type为变量类型;default字句给变量指定一个默认值,如果不指定就默认为null。


3、声明变量的例子

声明一个整型局部变量num,和两个字符型局部变量str1,str2。

DELIMITER $$

CREATE PROCEDURE  test()

BEGIN

DECLARE num INT(4);

DECLARE str1, str2 VARCHAR(6);

END $$

DELIMITER ;


4、使用set语句赋值

DELIMITER $$

CREATE PROCEDURE  test()

BEGIN

DECLARE num INT(4);

DECLARE str1, str2 VARCHAR(6);

    SET num=1, str1= 'hello';

END $$

DELIMITER ;


 5、select…into语句

例如:

在存储过程体中将XS表中的学号为081101的学生姓名和专业名的值分别赋给变量name和project。

   并且调用该存储过程,查看该生的姓名和专业名。

DELIMITER $$

CREATE PROCEDURE  test(out name VARCHAR(8),out project varchar(10))

BEGIN

SELECT 姓名,专业名 INTO name, project 

FROM XS

WHERE 学号= '081101';

END $$

DELIMITER ;

调用以上存储过程的语句

call test(@str1,@str2);

select @str1,@str2;

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部