MySQL数据库培训教程(图文并茂)之4_MySQL触发器与存储过程
MySQL数据库培训教程(图文并茂)之4_MySQL触发器与存储过程
731
本章主要内容
4.1 存储过程和函数
٭
4.1.1 创建与修改存储过程或函数
٭
4.1.2 删除存储过程或函数
٭
4.1.3 查看存储过程或者函数
٭
4.1.4 使用变量
٭
4.1.5 定义条件和处理
٭
4.1.6 光标的使用
٭
4.1.7 流程控制语句
4.2 触发器
٭
4.2.1 创建触发器
٭
4.2.2 删除与查看触发器
٭
4.2.3 触发器实现CHECK、级联
732
4.1
存储过程和函数
存储程序和函数是事先经过编译并存储在数据库中的一套SQL语句。创建后,客户端不需要再重新发布单独的语句,而是可以引用存储程序来替。存储程序可以提供改良后的性能, 因为只有较少的信息需要在服务器和客户算之间传送,代价是 增加数据库服务器系统的负荷。存储程序也允许你在数据库服务器上有函数库,从而提高了开发人员的开发效率。
以下情况存储程序尤其有用:
٭
当用不同语言编写多客户应用程序,或多客户应用程序在不同平台上运行且需要执行相同的数据库操作之时。
٭
安全极为重要之时。比如,银行对所有普通操作使用存储程序。程序可以确保每一个操作都被妥善记入日志。应用程序和用户不可能直接访问数据库表,但是仅可以执行指定的存储程序。
存储过程或函数说明
存储子程序的权限问题。
٭
创建存储子程序需要CREATE ROUTINE权限。
٭
修改或移除存储子程序需要ALTER ROUTINE权限。这个权限自动授予子程序的创建者。
٭
执行子程序需要EXECUTE权限。然而,这个权限自动授予子程序的创建者。
RETURNS字句只能对FUNCTION做指定,对函数而言这是强制的。它用来指定函数的返回类型,而且函数体必须包含一个RETURN value语句。