## 存儲過程 - 語法
存儲過程和函數就是事先經過編譯并存儲在數據庫中的一組SQL語句集合,功能強大,可以實現一些比較復雜的邏輯功能。
存儲過程和函數的區別在于函數必須有返回值,而存儲過程沒有; 存儲過程的參數可以是 IN、OUT、INOUT 類型,而函數只能是 IN 類型。
創建存儲過程語法:
CREATE
[DEFINER = { user | CURRENT_USER }]
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
調用存儲過程:
CALL sp_name(parameter[,...])
顯示存儲過程:
SHOW PROCEDURE STATUS [LIKE 'pattern' | WHERE expr];
SHOW PROCEDURE STATUS 語句可查詢提供存儲過程的特征,包括數據庫,存儲過程名稱,類型,創建者等。
SHOW PROCEDURE STATUS;
SHOW PROCEDURE STATUS WHERE db = 'studymysql';
SHOW PROCEDURE STATUS WHERE name LIKE '%employee%';
顯示存儲過程定義:
SHOW CREATE PROCEDURE procedure_name;
刪除存儲過程:
DROP PROCEDURE [IF EXISTS] procedure_name;