mysql -- 事务
事务操作
start transaction 开启事务
commit 事务提交
rollback 事务回滚 -- 出错时回滚
delimiter \\ create procedure p1( out p_return_code tinyint ) begin declare exit handler for sqlexception --为SQLexception错误声明出错码 begin -- error级别 set p_return_code = 1; rollback; end; declare exit handler for sqlwarning--为sqlwarning错误声明出错码 begin -- warning级别 set p_return_code = 2; rollback; end; start transaction; --开启事务 取钱业务; 扣钱业务; commit; --success set p_return_code = 0; end \\ delimiter ;
set @i = 0;
call p1(@i);
select @i;
注意pymysql默认是开启事务
当conn.commit()时会自动检查,出错时会回滚