Tables InnoDB
<<<
Comment utiliser les transactions de InnoDB avec différentes API Convertir des tables MyISAM vers InnoDB
>>>

16.7 Créer des tables InnoDB
16 Tables InnoDB
 Manuel de Référence MySQL 4.1 : Version Française

->Comment utiliser les transactions de InnoDB avec différentes API
Convertir des tables MyISAM vers InnoDB
Comment les colonnes AUTO_INCREMENT fonctionnent avec InnoDB
Contraintes de clés étrangères FOREIGN KEY
InnoDB et la réplication MySQL
Espaces de tables multiples : chaque table InnoDB a son fichier @filename{.ibd}

16.7.1 Comment utiliser les transactions de InnoDB avec différentes API

Par défaut, chaque client qui se connecte à MySQL commence avec le mode d'auto-validation activé, ce qui valide automatiquement toutes les requêtes que vous soumettez. Pour utiliser des requêtes mutli-commandes, vous pouvez désactiver l'auto-validation avec la commande SET AUTOCOMMIT = 0 et utiliser les commandes COMMIT et ROLLBACK pour valider ou annuler vos transactions. Si vous voulez laisser le mode d'auto-validation tranquille, vous pouvez placer vos commandes entre START TRANSACTION et COMMIT ou ROLLBACK . Avant MySQL 4.0.11, vous deviez utiliser la commande BEGIN au lieu de START TRANSACTION . L'exemle suivant montre deux transactions. La première est valideé, et la seconde est annulée.

shell> mysql test
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 3.23.50-log
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> CREATE TABLE CUSTOMER (A INT, B CHAR (20), INDEX (A))
    -> TYPE=InnoDB;
Query OK, 0 rows affected (0.00 sec)
mysql> BEGIN;
Query OK, 0 rows affected (0.00 sec)
mysql> INSERT INTO CUSTOMER VALUES (10, 'Heikki');
Query OK, 1 row affected (0.00 sec)
mysql> COMMIT;
Query OK, 0 rows affected (0.00 sec)
mysql> SET AUTOCOMMIT=0;
Query OK, 0 rows affected (0.00 sec)
mysql> INSERT INTO CUSTOMER VALUES (15, 'John');
Query OK, 1 row affected (0.00 sec)
mysql> ROLLBACK;
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT * FROM CUSTOMER;
+------+--------+
| A    | B      |
+------+--------+
|   10 | Heikki |
+------+--------+
1 row in set (0.00 sec)
mysql>
Avec des interfaces comme PHP, Perl DBI/DBD , JDBC , ODBC ou l'interface C, vous pouvez envoyer des commandes de contrôle de transaction comme COMMIT au serveur sous la forme de chaîne, tout comme une autre commande SELECT et INSERT . Certaines interfaces proposent des fonctions spécifiques pour les validations et annulations de transactions.

<< Comment utiliser les transactions de InnoDB avec différentes API >>
Tables InnoDB Créer des tables InnoDB Convertir des tables MyISAM vers InnoDB