我的 MYSQL DB 中有这个 SQL(sproc 的主体为空,所以我猜没有隐式提交?)。
DROP PROCEDURE IF EXISTS doOrder;
DELIMITER $$
CREATE PROCEDURE doOrder(IN orderUUID VARCHAR(40))
BEGIN
SAVEPOINT sp_doOrder;
BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION ROLLBACK TO sp_doOrder;
-- doing my updates and selects here...
END;
RELEASE SAVEPOINT sp_doOrder;
END $$
DELIMITER ;
当我
call doOrder('some-unique-id');
我得到:错误 1305 (42000):SAVEPOINT sp_doOrder 不存在。
我可能会忽略一些东西......有什么想法吗?