MYSQL存储过程怎么写
时间:2022-03-10 18:10
DELIMITER $$
DROP PROCEDURE IF EXISTS HelloWorld$$
CREATE PROCEDURE HelloWorld()
BEGIN
SELECT "Hello World!";
END$$
DELIMITER ;
3,变量
DECLARE声明,SET赋值
可以在DECLARE变量时用DEFAULT设置默认值,不设则为NULL
DECLARE counter INT DEFAULT 0;
SET counter = counter+1;
4,参数
IN为默认类型,值必须在调用时指定,值不能返回(值传递)
OUT值可以返回(指针传递)
INOUT值必须在调用时指定,值可以返回
CREATE PROCEDURE test(a INT, OUT b FLOAT, INOUT c INT)
CREATE PROCEDURE test(a INT, OUT b FLOAT, INOUT c INT)
5,条件判断
IF THEN、ELSEIF、ELSE、END IF
代码
DELIMITER $$
DROP TRIGGER sales_trigger$$
CREATE TRIGGER sales_trigger
BEFORE INSERT ON sales
FOR EACH ROW
BEGIN
IF NEW.sale_value > 500 THEN
SET NEW.free_shipping = ‘Y‘;
ELSE
SET NEW.free_shipping = ‘N‘;
END IF;
IF NEW.sale_value > 1000 THEN
SET NEW.discount = NEW.sale_value * .15;
ELSE
SET NEW.discount = 0;
END IF;
END$$
DELIMITER ;
MYSQL存储过程怎么写,布布扣,bubuko.com