mysql存储过程写法
时间: 2023-06-30 07:21:05 浏览: 73
MySQL存储过程的写法如下:
```
DELIMITER $$
CREATE PROCEDURE procedure_name (IN param1 datatype1, IN param2 datatype2, OUT param3 datatype3)
BEGIN
-- 存储过程主体代码
END$$
DELIMITER ;
```
其中,`DELIMITER` 是改变 MySQL 的语句结束符号,方便写存储过程,`$$` 表示存储过程的开始和结束,`procedure_name` 是存储过程的名称,`IN` 和 `OUT` 表示参数的输入和输出,`param1`、`datatype1` 等是参数名和数据类型。存储过程主体代码可以写入多条 SQL 语句,其中可以使用控制流语句,如 `IF`、`ELSEIF`、`ELSE`、`WHILE` 等。最后,使用 `DELIMITER ;` 恢复 MySQL 的默认语句结束符号。
相关问题
mysql 存储过程写法
MySQL存储过程的写法如下:
```sql
DELIMITER //
CREATE PROCEDURE procedure_name (parameter1 datatype, parameter2 datatype, ...)
BEGIN
-- 在这里编写存储过程的逻辑代码
-- 可以使用参数、变量、条件语句等
-- 示例:输出参数值
SELECT parameter1, parameter2;
-- 示例:执行SQL语句
SET @query = CONCAT('SELECT * FROM table WHERE column = ', parameter1);
PREPARE stmt FROM @query;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END //
DELIMITER ;
```
请将 `procedure_name` 替换为存储过程的名称,`parameter1`、`parameter2` 等替换为存储过程的参数名称和对应的数据类型。在 `BEGIN` 和 `END` 之间编写存储过程的逻辑代码,可以使用参数、变量、条件语句等。以上只是一个示例,你可以根据自己的需求来编写实际的存储过程逻辑代码。
mysql存储过程写法case
MySQL存储过程中的case语句可以用于实现条件判断和分支控制。下面是一个MySQL存储过程中使用case语句的示例:
```mysql
CREATE PROCEDURE sp_test_case(IN num INT)
BEGIN
DECLARE result VARCHAR(20); CASE num
WHEN 1 THEN SET result = 'one'; WHEN 2 THEN SET result = 'two';
WHEN 3 THEN SET result = 'three';
ELSE SET result = 'other'; END CASE;
SELECT result;
END;
```
上述存储过程中,定义了一个输入参数num和一个输出变量result。根据输入参数num的不同取值,使用case语句进行条件判断,将对应的字符串赋值给输出变量result。最后通过SELECT语句返回结果。
阅读全文