gpt4 book ai didi

MySql 条件停止脚本执行

转载 作者:行者123 更新时间:2023-11-29 04:16:48 26 4
gpt4 key购买 nike

我需要编写 SQL 脚本,如果在数据库中找不到某些值,它就会停止。像这样的东西(伪代码):

BEGIN;
...
set @a = (select ... );
if @a IS NULL THEN STOP_WITH_ERROR_AND_ROLLBACK();
...
COMMIT;

谁能帮帮我?

更新:由于某些原因,我无法使用存储过程或函数。

更新 2: 注意:我不需要显式回滚。脚本执行中断就足够了。它会自动回滚未提交事务的更改。

最佳答案

    start transaction;

set @a=(select ...);
-- whatever you want to execute your code like insert, update

set @b=(select if(@a is null,'ROLLBACK','COMMIT'));
-- @b is store **ROLLBACK** if @a is null nither store **COMMIT**

prepare statement1 from @b;
-- now statement1 store as @a value
execute statement1;

我希望它能解决你的问题。

关于MySql 条件停止脚本执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40586473/

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