存儲過程是一組預先編譯並儲存在資料庫中的 SQL 語句集合,類似於程式設計中的函數或方法。它封裝了對單表或多表的增刪改查邏輯,賦予一個名稱後即可反覆呼叫,無需每次重寫複雜的 SQL 代碼。
CREATE PROCEDURE proc_name ([IN | OUT | INOUT] param_name data_type)
BEGIN
-- SQL 語句區塊,每句以分號結尾
statement;
END
在 MySQL 命令列中,預設分隔符為分號,編寫存儲過程時需先用 DELIMITER // 變更分隔符,避免內部分號被誤判為結束標記。
DELIMITER //
CREATE PROCEDURE hello()
BEGIN
SELECT 'Hello World!';
END //
DELIMITER ;
呼叫方式:
CALL hello();
輸出結果:
+----------------------+ | Hello World! | +----------------------+ | Hello World! | +----------------------+
DROP PROCEDURE proc_name;DROP PROCEDURE。存儲過程是資料庫開發的利器,善用它能提升效能、簡化維護、強化安全。掌握基本語法與參數模式(IN/OUT/INOUT)後,即可在專案中靈活應用,處理複雜業務邏輯。