Accounts(acc_id, balance)
Procedure created
CREATE PROCEDURE sp_transfer_funds(IN p_from INT, IN p_to INT, IN p_amt DECIMAL(10,2)) BEGIN START TRANSACTION; UPDATE Accounts SET balance = balance - p_amt WHERE acc_id = p_from AND balance >= p_amt; IF ROW_COUNT() = 0 THEN ROLLBACK; ELSE UPDATE Accounts SET balance = balance + p_amt WHERE acc_id = p_to; COMMIT; END IF; END;
CREATE PROCEDURE sp_transfer_funds(IN p_from INT, IN p_to INT, IN p_amt DECIMAL(10,2)) BEGIN START TRANSACTION; UPDATE Accounts SET balance = balance - p_amt WHERE acc_id = p_from AND balance >= p_amt; IF ROW_COUNT() = 0 THEN ROLLBACK; ELSE UPDATE Accounts SET balance = balance + p_amt WHERE acc_id = p_to; COMMIT; END IF; END;