gpt4 book ai didi

mysql - 使用不同的脚本创建 If 分支

转载 作者:行者123 更新时间:2023-11-29 06:32:46 38 4
gpt4 key购买 nike

我想创建一个脚本,根据变量的状态使用不同的表和命令执行不同的操作。在 T-SQL 中,我会这样做:

DECLARE @whatToDo INT = 1;

IF @whatToDo = 1
BEGIN
SELECT 1
END
ELSE
BEGIN
TRUNCATE TABLE myDumbTable
END

但我不知道如何将其转换为 MySQL。我的目标是创建一个存储过程,它可以从不同的表返回内容,根据参数的状态进行插入或更新。

最佳答案

在 MySQL 中,您可以定义如下存储过程:

DELIMITER //
CREATE PROCEDURE do_something(IN whatToDo INT)
BEGIN
CASE whatToDo
WHEN 1 THEN
SELECT 1;
WHEN 2 THEN
TRUNCATE TABLE myDumbTable;
-- ...
ELSE BEGIN
-- do something when whatToDo doesn't match any of the case branches
END;
END CASE;
END //
DELIMITER ;

如果您愿意,还可以使用 IF 语句编写该过程:

DELIMITER //
CREATE PROCEDURE do_something(IN whatToDo INT)
BEGIN
IF whatToDo = 1 THEN
SELECT 1;
ELSEIF whatToDo = 2 THEN
TRUNCATE TABLE myDumbTable;
-- ...
ELSE
-- do something when whatToDo doesn't match any of the other branches
END IF;
END //
DELIMITER ;

关于mysql - 使用不同的脚本创建 If 分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55416814/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com