MySQL——局部變量
局部變量
1、聲明變量:在存儲(chǔ)過(guò)程中可以聲明局部變量,它們可以用來(lái)存儲(chǔ)臨時(shí)結(jié)果,并且只能用于該存儲(chǔ)過(guò)程;只能在begin…end語(yǔ)句塊中聲明。
必須使用declare語(yǔ)句
2、語(yǔ)法格式
declare var_name type [default value]
其中,var_name為變量名;type為變量類型;default字句給變量指定一個(gè)默認(rèn)值,如果不指定就默認(rèn)為null。
3、聲明變量的例子
聲明一個(gè)整型局部變量num,和兩個(gè)字符型局部變量str1,str2。
DELIMITER $$
CREATE PROCEDURE test()
BEGIN
DECLARE num INT(4);
DECLARE str1, str2 VARCHAR(6);
END $$
DELIMITER ;
4、使用set語(yǔ)句賦值
DELIMITER $$
CREATE PROCEDURE test()
BEGIN
DECLARE num INT(4);
DECLARE str1, str2 VARCHAR(6);
SET num=1, str1= 'hello';
END $$
DELIMITER ;
5、select…into語(yǔ)句
例如:
在存儲(chǔ)過(guò)程體中將XS表中的學(xué)號(hào)為081101的學(xué)生姓名和專業(yè)名的值分別賦給變量name和project。
并且調(diào)用該存儲(chǔ)過(guò)程,查看該生的姓名和專業(yè)名。
DELIMITER $$
CREATE PROCEDURE test(out name VARCHAR(8),out project varchar(10))
BEGIN
SELECT 姓名,專業(yè)名 INTO name, project
FROM XS
WHERE 學(xué)號(hào)= '081101';
END $$
DELIMITER ;
調(diào)用以上存儲(chǔ)過(guò)程的語(yǔ)句
call test(@str1,@str2);
select @str1,@str2;
點(diǎn)擊加載更多評(píng)論>>