Comment implémenter les instructions de traitement des transactions dans MySQL ?
Dans les opérations de base de données, le traitement des transactions est une partie très importante. Il peut garantir qu'une série d'opérations sont toutes exécutées ou pas du tout. Le traitement des transactions dans MySQL peut être implémenté via l'exemple de code suivant.
Tout d'abord, créons un exemple de table pour démontrer l'instruction de traitement des transactions :
CREATE TABLE bank_account ( id INT PRIMARY KEY, account_number VARCHAR(20), balance DECIMAL(10, 2) );
Ensuite, nous montrerons comment utiliser l'instruction de traitement des transactions dans MySQL pour effectuer des opérations de transfert, en garantissant que toutes les opérations de transfert sont exécutées avec succès ou non. du tout mettre en œuvre.
START TRANSACTION; -- 查询转出账户余额 SELECT balance INTO @balance_out FROM bank_account WHERE id = 1; -- 查询转入账户余额 SELECT balance INTO @balance_in FROM bank_account WHERE id = 2; IF @balance_out >= 100.00 THEN -- 更新转出账户余额 UPDATE bank_account SET balance = @balance_out - 100.00 WHERE id = 1; -- 更新转入账户余额 UPDATE bank_account SET balance = @balance_in + 100.00 WHERE id = 2; COMMIT; SELECT '转账成功'; ELSE ROLLBACK; SELECT '转账失败'; END IF;
Dans l'exemple ci-dessus, nous utilisons d'abord START TRANSACTION
pour ouvrir une transaction. Ensuite, nous interrogeons le solde du compte de transfert sortant et du compte de transfert entrant, et utilisons un jugement conditionnel pour déterminer si l'opération de transfert peut être effectuée. Si le transfert peut être effectué, les soldes du compte de transfert sortant et du compte de transfert entrant sont respectivement mis à jour et la transaction est validée. Si le transfert ne peut pas être effectué, la transaction est annulée.
Grâce à l'exemple ci-dessus, nous pouvons voir comment utiliser les instructions de traitement des transactions dans MySQL pour garantir qu'une série d'opérations sont toutes exécutées ou qu'aucune n'est exécutée. Cela garantit l’intégrité et la cohérence des données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!