MySQL 8.3 Release Notes
目录
本章讨论了在服务器上以 SQL 代码形式存储的存储对象,这些对象可以在后续执行。
存储对象包括以下对象类型:
-
存储过程:使用
CREATE PROCEDURE
创建的对象,并使用CALL
语句调用。过程不返回值,但可以修改其参数以供调用者后续检查。它还可以生成结果集以返回给客户端程序。 -
存储函数:使用
CREATE FUNCTION
创建的对象,并像内置函数一样使用。您可以在表达式中调用它,并在表达式评估期间返回值。 -
触发器:使用
CREATE TRIGGER
创建的对象,并与表关联。当表发生特定事件时,例如插入或更新,触发器将被激活。 -
事件:使用
CREATE EVENT
创建的对象,并根据计划由服务器调用。 -
视图:使用
CREATE VIEW
创建的对象,当引用时生成结果集。视图充当虚拟表。
本文档中使用的术语反映了存储对象的层次结构:
-
存储例程包括存储过程和函数。
-
存储程序包括存储例程、触发器和事件。
-
存储对象包括存储程序和视图。
本章描述了如何使用存储对象。以下部分提供了关于相关语句的 SQL 语法信息,以及对象处理信息:
-
对于每种对象类型,都有
CREATE
、ALTER
和DROP
语句来控制对象的存在和定义。请参阅 第 15.1 节,“数据定义语句”。 -
CALL
语句用于调用存储过程。请参阅 第 15.2.1 节,“CALL 语句”。 -
存储程序定义包括使用复合语句、循环、条件语句和声明变量的主体。请参阅 第 15.6 节,“复合语句语法”。
-
存储程序引用的对象的元数据更改将被检测,并在下次执行时自动重新解析受影响的语句。有关更多信息,请参阅 第 10.10.3 节,“预备语句和存储程序的缓存”。