MySql 中文参考指南
Chapter 27 Stored Objects
目录
本章讨论存储在数据库中的对象,这些对象根据存储在服务器中以备以后执行的 SQL 代码来定义。
存储对象包括以下对象类型:
-
存储过程:使用 CREATE PROCEDURE 创建并使用 CALL 语句调用的对象。一个过程没有返回值,但可以修改其参数,以便稍后由调用方检查。它还可以生成结果集,以返回给客户端程序。
-
存储函数:使用 CREATE FUNCTION 创建并用得很像内置函数的对象。你在一个表达式中调用它,在表达式评估期间,它返回一个值。
-
触发器:使用 CREATE TRIGGER 创建并与表关联的对象。当表中发生特定事件时会激活触发器,例如插入或更新。
-
事件:使用 CREATE EVENT 创建且由服务器按计划调用的对象。
-
视图:使用 CREATE VIEW 创建并引用时产生结果集的对象。视图充当虚拟表。
本文档中使用的术语反映了存储对象层次结构:
-
存储例程包括存储过程和函数。
-
存储程序包括存储例程、触发器和事件。
-
存储对象包括存储程序和视图。
本章节介绍如何使用存储对象。以下部分提供了与这些对象相关的语句的 SQL 语法以及对象处理的其他信息:
-
对于每种对象类型,都有 CREATE、ALTER 和 DROP 语句来控制哪些对象存在及其如何定义。请参阅 Section 15.1, “Data Definition Statements”。
-
CALL 语句用于调用存储过程。参见 Section 15.2.1, “CALL Statement” 。
-
存储程序定义包括可能使用复合语句、循环、条件和声明变量的主体。请参阅 Section 15.6, “Compound Statement Syntax”。
-
系统会检测到存储程序引用的对象发生元数据更改,并在下次执行程序时自动重新解析受影响的语句。有关更多信息,请参阅 Section 10.10.3, “Caching of Prepared Statements and Stored Programs”。