目录
1.存储过程的创建
2.存储过程的调用
3.查找指定的存储过程
1.存储过程的创建
2.存储过程的调用
存储过程共支持三种类型的参数:
IN 输入参数
OUT 输出参数
INOUT 传入传出参数
创建存储过程并调用(附带表的创建,数据的插入等)
示例1. 不带输入参数的存储过程
创建过程
DROP TABLE IF EXISTS good;
CREATE TABLE good(
id INT PRIMARY KEY auto_increment,
price FLOAT
);
INSERT INTO good(price) VALUES(2.3),(2.6),(2.7);
CREATE PROCEDURE priceQuery(
OUT pl FLOAT,
OUT ph FLOAT,
OUT pa FLOAT
)
BEGIN
SELECT MIN(price)
INTO pl
FROM good;
SELECT MAX(price)
INTO ph
FROM good;
SELECT AVG(price)
INTO pa
FROM good;
END;
调用存储过程
CALL priceQuery(@low,@high,@avg);
SELECT @low,@high;
SELECT @avg;
示例2 带输入参数的存储过程,里面调用了之前创建的存储过程
DROP PROCEDURE IF EXISTS good;
CREATE PROCEDURE good(
IN num INT,
OUT price2 FLOAT
)
BEGIN
SELECT price
FROM good
WHERE good.id = num
INTO price2;
CALL priceQuery(@low,@high,@avg);
SELECT @low,@high,@avg;
END;
CALL good(3,@price);
SELECT @price,@low,@high;
结果显示:
3.存储过程的查找
存储过程的查找语句示例
#模糊查询存储过程
SHOW PROCEDURE STATUS LIKE 'good';
#查询指定名称的存储过程
SHOW CREATE PROCEDURE good;