MYSQL命令的执行流程
SQL语句--->MYSQL引擎---(分析)--->语法正确--->可识别命令---(执行)--->执行结果--->返回
存储过程是SQL语句和控制语句的预编译集合,以一个名称存储并作为一个单元处理。
存储过程的意义在于省略了分析和识别命令的过程,直接得到结果。因此大大的节省了编译时间。效率是很高的。
存储过程的优点:
增强了SQL语句的功能和灵活性
实现了较快的执行速度
减少了网络流量
创建存储过程:
参数:IN表示该参数的值必须在调用存储过程时指定;
OUT表示该参数的值可以被存储过程改变,并且可以返回;
INOUT表示该参数在调用时指定,并且可以被返回。
过程体和函数体内容一致。
创建存储过程
CREATE PROCEDURE sp1() SELECT VERSION();
调用存储过程
CALL sp1;(没有参数)
带参数的存储过程
DELIMITER//(最后以//结尾)
CREATE PROCEDURE removeID(IN id INT UNSIGNED)
BEGIN
DELETE FROM users WHERE id = id;
END//