Stored procedure là đoạn mã SQL khai báo được lưu trong catalog của database. MySQL 5 giới thiệu stored procedure.
Cú pháp
CREATE [DEFINER = { user | CURRENT_USER }] PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
proc_parameter: [ IN | OUT | INOUT ] param_name type
type: Any valid MySQL data type
characteristic: COMMENT 'string' | LANGUAGE SQL | [NOT] DETERMINISTIC |
{ CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA } |
SQL SECURITY { DEFINER | INVOKER }
routine_body: Valid SQL routine statement
Ví dụ
Tạo procedure allrecords() lấy tất cả bản ghi từ student_info:
mysql> SELECT * FROM student_info;
+-----+---------+------------+------------+
| id | Name | Address | Subject |
+-----+---------+------------+------------+
| 100 | Aarav | Delhi | Computers |
| 101 | YashPal | Amritsar | History |
| 105 | Gaurav | Jaipur | Literature |
| 110 | Rahul | Chandigarh | History |
+------+---------+------------+------------+
4 rows in set (0.00 sec)
mysql> DELIMITER //
mysql> CREATE PROCEDURE allrecords()
-> BEGIN
-> SELECT * FROM Student_info;
-> END//
Query OK, 0 rows affected (0.02 sec)
mysql> DELIMITER ;