[QR]Utiliser les transactions sous MySQL 3.23.xxx
Le format par défaut des tables crées sous EasyPHP ne supporte pas les transactions (MyISAM). Il faut utiliser un format comme InnoDb qui n'est pas activé par défaut sous MySQL 3.23.xx, par exemple le serveur MySQL fournit avec EasyPHP 1.6 et en général pour les versions inférieures à la 4.1.
Avant toute chose, il convient de connaître les moteurs de stockage supportés par votre serveur. Utilisez la commande
et regardé la valeur de la variable have_innodb. Si celle-ci vaut No, cà ne vaut pas peine de continuer, si c'est Yes, vous pouvez d'ores et déjà créer des tables de ce format. Le paragraphe qui suit traite du cas où vous aurez la valeur Disabled qui signifie que le serveur supporte cette fonctionnalité mais qu'elle n'est pas activée.
Il existe deux possibilités :
1/se procurer le serveur MySQL-MAX qui est une version de MySQLd compilée avec --with-innodb qui active le support de InnoDb
2/configurer le fichier my.ini situé dans <HOMEDRIVE>\Windows
Pour réaliser la seconde solution, il faut aller dans le fichier my.ini et effacer (si elle existe) la ligne --skip-innodb et la remplacer au moins par l'option innodb_data_file_path qui spécifie le chemin des bases Innodb. par défaut, le repertoire de base sera celui où mysql stocke les données. Sinon utilisez innodb_data_home_dir pour spécifier un repertoire.
Voilà, vous n'avez plus qu'à redémarrer le serveur et utilisez les instructions Begin (pour les versions de MySQL antérieures à la 4.0.11) ou Start transaction, commit pour valider les données et Rollback pour les annuler.
Partager