什麼是存儲過程?爲何要使用存儲過程?如何使用存儲過程?
<!--more-->
MySQL5 添加了對存儲過程的支持,存儲過程只適用於MySQL5+。
存儲過程是多條SQL語句的集合,可以經過一個完整的動做實現連貫的SQL操做。mysql
CALL productpricing( 1, // 輸入 @avg // 輸出 帶有@ 的變量 ); SELECT @avg;
CREAT PROCEDURE ordertotal( IN onumber INT, // 輸入 數據類型與建表的數據類型相同 IN taxable BOOLEAN, OUT ototal DECIMAL(8, 2) // 輸出 ) COMMENT 'COMMENT' // 備註 -- Declare variable for total DECLARE total DECIMAL(8, 2) // 定義變量 -- Declare tax percentage DECLARE taxrate INT DEFAULT 6 -- Get the order total SELECT Sum(item_price*quantity) FROM orderitems WHERE order_num = onumber INTO total; // 結果注入變量 -- Is this taxable ? IF taxable THEN // 條件判斷 -- YES SELECT total+(total/100*taxrate) INTO total; END IF; SELECT total INTO ototal; END;
DROP PROCEDURE productpricing;
SHOW CREATE PROCEDURE ordertotal;
原文連接git