gpt4 book ai didi

mysql - 在 Mysql Workbench 中存储脚本的最佳方法

转载 作者:行者123 更新时间:2023-11-29 22:22:40 24 4
gpt4 key购买 nike

假设我在mysql中有一系列表,其中一些表依赖于其他表(所以如果我不想强制删除,我就必须按顺序删除它们)。现在假设我有一个小脚本来按顺序删除它们...现在假设我想在 mysql 工作台中运行它,更好的是有一个接受参数(如 userId)并执行上述操作的函数...我如何在 Mysql 工作台中以一种可以轻松检索和运行代码的方式执行此类操作(例如,如果我想删除用户以及与该用户关联的所有其他对象。)

最佳答案

您可以使用 stored procedure

DELIMITER //

CREATE PROCEDURE delete_user(IN _user_id INT)
BEGIN
START TRANSACTION;
DELETE FROM user_data WHERE user_id = _user_id;
-- your other delete statements go here in a proper order
DELETE FROM users WHERE id = _user_id;
COMMIT;
END//

DELIMITER ;

使用示例:

CALL delete_user(2); -- delete a user with id = 2

这是一个 SQLFiddle 演示

关于mysql - 在 Mysql Workbench 中存储脚本的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30565638/

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