存储过程和函数
1.什么是存储过程和函数
存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句集合,调用存储过程和函数可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。
存储过程和函数的区别在于函数必须有返回值,而存储过程没有。
2.存储过程和函数的相关操作
在操作时首先要确保用户有相应的权限。例如创建存储过程或函数需要CREATE ROUTINE 权限,修改或者删除存储过程或者函数需要ALTER ROUTINE权限,执行存储过程或者函数需要EXECUTE权限。
2.1 创建、修改存储过程或者函数
语法:
CREATE PROCEDURE sp_name([proc_parameter[,...]]) [characteristic ...] routine_body——————存储过程
CREATE FUNCTION sp_name([func_parameter[,...]]) RETURN type [characteristic ...] routine_body————函数
调用过程的语法:
CELL sp_name([parameter[, ...]])
mysql的存储过程和函数中允许包含DDL语句,也允许在存储过程中执行提交或者回滚,但是存储过程和函数中不允许执行LOAD DATA INFILE语句。