Cet article de blog résume principalement les différences entre MyISAM et InnoDB
InnoDB et MyISAM sont les deux types de tables les plus couramment utilisés lors de l'utilisation de MySQL, les deux types de tables ont leurs propres avantages et inconvénients, en fonction de l'application spécifique. Les différences fondamentales sont :
(1) Le type MyISAM ne prend pas en charge le traitement avancé tel que le traitement des transactions, tandis que le type InnoDB prend en charge les transactions.
(2) InnoDB prend en charge le verrouillage des lignes de données ; MyISAM ne prend pas en charge le verrouillage des lignes et prend uniquement en charge le verrouillage de la table entière. Il convient de noter ici que le verrouillage des lignes de la table InnoDB n'est pas absolu. Si MySQL ne peut pas déterminer la plage à analyser lors de l'exécution d'une instruction SQL, la table InnoDB verrouillera également la table entière, par exemple en mettant à jour l'ensemble de tables num=. 1 où le nom est comme "� a%”
(3) InnoDB prend en charge les clés étrangères, mais pas MyISAM.
(4) InnoDB n'enregistre pas le nombre spécifique de lignes dans la table, c'est-à-dire que lors de l'exécution de select count() from table, InnoDB doit analyser la table entière pour en calculer le nombre. il y a des rangées. Mais MyISAM lit simplement le nombre de lignes enregistrées. Notez que lorsque l'instruction count() contient des conditions Where, les opérations des deux tables sont les mêmes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!