| |
|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
Xophe WRInaute occasionnel

Inscrit le: 23 Mar 2005 Messages: 142
|
Posté le : Mar Mar 18, 2008 16:34 Sujet du message: Transactions MySql et gestion des erreurs |
|
|
Bonjour,
je travaille à la création d'un site marchand et je suis face au pb classique des "transactions". Il s'agit par exemple de m'assurer que si je vends un produit, il est bien supprimé du stock du marchand et crédité sur le compte de l'acheteur.
Dans la mesure où il s'agit de 2 requêtes:
- je supprime le produit du stock du marchand
- je crédite le compte de l'acheteur
que faire si la seconde requête échoue ?
- remettre le produit au stock du marchand... mais que faire alors si cette requête aussi échoue
- avoir un système de logs pour détecter une incohérence dans mon modèle... mais ne pas baser ce système sur MySql. Par email ? Ecriture dans un fichier ?
Mais au fond, qu'est-ce qui peut provoquer l'échec d'une requête si une précédente s'est exécutée sans soucis qq ms plus tôt ?
Au fond, pas mal de questions Comment faites-vous de votre côté ?
Merci |
|
| |
|
 |
jcaron WRInaute impliqué

Inscrit le: 13 Fév 2004 Messages: 484 Localisation: Paris
|
Posté le : Mar Mar 18, 2008 17:01 Sujet du message: Re: Transactions MySql et gestion des erreurs |
|
|
| Xophe a écrit: |
| Comment faites-vous de votre côté ? |
Ben on utilise des "transactions" justement.
http://dev.mysql.com/doc/refman/5.1/en/commit.html
La BDD doit garantir que soit toutes les opérations de la transaction (entre le begin et le commit) ont été exécutées, soit qu'aucune ne l'a été (et tu sais lequel des deux cas s'est produit), et que même en cas de plantage du serveur après le commit, tout ce qui a été exécuté sera toujours là au redémarrage.
Bon ça c'est la théorie (propriétés ACID tout ça), de mémoire mysql n'est pas très doué de ce point de vue avec les tables myisam, il vaut mieux s'orienter vers du innodb (mais je laisse la parole à ceux qui connaissent mysql mieux que moi).
Jacques. |
|
| |
|
 |
Xophe WRInaute occasionnel

Inscrit le: 23 Mar 2005 Messages: 142
|
Posté le : Mar Mar 18, 2008 17:25 Sujet du message: Transactions MySql et gestion des erreurs |
|
|
Merci pour ta réponse Jacques.
Il est visiblement possible de créer des tables innoDB sur OVH, je vais donc m'orienter vers cette solution.
Mais peut-être qu'un autre utilisateur du forum a d'autres pistes ? |
|
| |
|
 |
| |
|
|
|
|
Autres sujets de discussion :
Définitions :
|
|