2009-12-15 6 views
4

J'ai entendu dire que MySQL n'avait aucun support de transaction? Est-ce vrai? Si oui, comment les gens pourraient-ils écrire un code fiable pour s'assurer de la cohérence et de la fiabilité des données par rapport à d'autres bases de données commerciales (par exemple Oracle/SQL Server)?MySQL ne prend pas en charge les transactions?

merci à l'avance, George

Répondre

7

En fait, MySQL ne incluent le support pour les transactions à travers le InnoDB storage engine qui est livré avec MySQL. Ce n'est pas le moteur de stockage par défaut, mais ce paramètre peut être modifié. Ou vous pouvez simplement spécifier le moteur lors de la création de vos tables.

create table mytable (...) engine=innodb; 
+1

Merci! Question répondue! – George2

4

Pre-4.0, MySQL ne prend pas en charge les transactions. Ce n'est plus le cas. Le support transactionnel existe désormais via InnoDB, l'un des moteurs de stockage disponibles. MyISAM prend en charge l'intégrité des données via des opérations essentiellement autocommit et atomiques, une route différente, et parfois moins efficace, mais pas rien.

Questions connexes