MySQL 存储过程是一种预编译 SQL 语句,用于执行多个操作:创建过程:使用 CREATE PROCEDURE 语句创建存储过程。指定参数:使用输入和输出参数传递数据。声明变量:使用 DECLARE 语句声明局部变量。编写语句块:包含要执行的 SQL 语句。处理错误:使用 DECLARE 和 SIGNAL 语句声明错误处理变量和引发错误。
存储过程是一种存储在数据库中的预编译 SQL 语句。它允许用户使用单个语句执行多个操作,从而提高性能并简化代码。
创建过程:使用以下语法创建存储过程:
CREATE PROCEDURE [存储过程名称] ([参数列表]) [声明部分] BEGIN [语句块] END
DECLARE 语句声明局部变量。DECLARE 语句
声明错误处理变量,并使用 SIGNAL 语句引发错误。下面的示例创建一个名为 get_customer 的存储过程,它接受一个客户 ID 作为输入参数,并返回客户信息作为输出参数:
CREATE PROCEDURE get_customer(IN customer_id INT) BEGIN DECLARE customer_name VARCHAR(255); DECLARE customer_email VARCHAR(255); SELECT name, email INTO customer_name, customer_email FROM customers WHERE customer_id = customer_id; SET @name = customer_name; SET @email = customer_email; END
可以通过以下方式使用存储过程:
CALL [存储过程名称]([参数值列表])
在上例中,可以如下方式调用 get_customer 存储过程:
CALL get_customer(123)