mysql 存储过程示例
时间: 2024-08-06 22:01:38 浏览: 56
MySQL 存储过程是一组预编译的SQL语句,它们可以作为单个单元执行,通常用于封装复杂的业务逻辑或数据处理操作。下面是一个简单的存储过程示例,它接受两个整数参数并返回它们的和:
```sql
DELIMITER //
CREATE PROCEDURE AddNumbers(IN num1 INT, IN num2 INT, OUT result INT)
BEGIN
SET result = num1 + num2;
END; //
DELIMITER ;
```
在这个例子中:
- `DELIMITER`命令是用来设置SQL语句的结束符,默认是分号(`;`),但在存储过程中使用的是双反斜杠 (`//`)。
- `CREATE PROCEDURE`声明了一个名为`AddNumbers`的存储过程。
- `IN num1 INT, IN num2 INT`指定了两个输入参数,一个是整数`num1`,另一个也是整数`num2`。
- `OUT result INT`定义了一个输出参数,表示将计算结果保存在变量`result`中。
- `BEGIN...END`之间的部分是存储过程的主体,其中实现了加法运算并将结果赋值给`result`。
- 调用这个存储过程的语法是:`CALL AddNumbers(5, 7, @sum);`,最后会得到12,并将结果存储在`@sum`变量中。
相关问题
写一个mysql存储过程示例
好的,以下是一个简单的 MySQL 存储过程示例,用于计算两个数字的和:
```
CREATE PROCEDURE `add_numbers`(IN a INT, IN b INT, OUT result INT)
BEGIN
SET result = a + b;
END
```
这个存储过程名为 `add_numbers`,有三个参数:`a` 和 `b` 是输入参数,`result` 是输出参数。在存储过程中,我们使用 `SET` 语句将 `result` 的值设置为 `a` 和 `b` 的和。这个存储过程可以通过以下方式调用:
```
CALL add_numbers(10, 20, @result);
SELECT @result;
```
这个调用会将结果存储在 MySQL 变量 `@result` 中,并使用 `SELECT` 语句将结果打印出来。在实际使用中,存储过程可以实现更复杂的逻辑,例如查询、更新、删除数据等。
阅读全文