Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

Transactions MySql et gestion des erreurs

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
Xophe
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 23 Mar 2005
Messages: 142

URL permanente de ce messagePosté 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 Wink Comment faites-vous de votre côté ?
Merci
 
Xophe Visiter le site web du posteur
jcaron
WRInaute impliqué
WRInaute impliqué

Inscrit le: 13 Fév 2004
Messages: 484
Localisation: Paris

URL permanente de ce messagePosté 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.
 
jcaron Visiter le site web du posteur
Xophe
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 23 Mar 2005
Messages: 142

URL permanente de ce messagePosté 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 ?
 
Xophe Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Définitions :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort