如果我使用的数据库包含“ PROD”,则必须停止我的脚本。
我可以使用存储过程来做到这一点,但是:
是否有更好的方法或至少可以选择在失败的情况下放弃该程序?
我的代码:
USE xxx_prod_xxx;
DELIMITER $$
drop procedure if exists check_if_prod$$
CREATE PROCEDURE check_if_prod()
BEGIN
DECLARE C VARCHAR(100);
SELECT DATABASE() INTO C;
-- check if contains "prod"
IF(C LIKE '%prod%') THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Shit happens.';
END IF;
END$$
DELIMITER ;
CALL check_if_prod();
DROP PROCEDURE check_if_prod;