什么是存储过程,以及如何创建MySQL存储过程?
在常规计算机语言的上下文中,存储过程可以定义为存储在数据库中的子程序(如子程序)。在MySQL的上下文中,它是存储在数据库目录中的一段声明性SQL语句。在MySQL中编写存储过程之前,我们必须检查版本,因为MySQL 5引入了存储过程。下面是创建存储过程的语法 –
阅读更多:MySQL 教程
语法
CREATE [DEFINER = { user | CURRENT_USER }]
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body
proc_parameter: [ IN | OUT | INOUT ] param_name type
type:
任何有效的MySQL数据类型
characteristic:
COMMENT 'string'
| LANGUAGE SQL
| [NOT] DETERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA
| MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
routine_body:
有效的SQL例程语句
示例
以下是一个示例,其中我们创建了一个简单过程,以获取具有以下数据的表“ 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)
现在,借助以下查询,我们创建了名为allrecords()的存储过程
mysql> Delimiter //
mysql> Create Procedure allrecords()
-> BEGIN
-> Select * from Student_info;
-> END//
Query OK, 0 rows affected (0.02 sec)
mysql> DELIMITER ;
极客教程