2010-12-10 25 views
0

Je suis en train de faire une mise à jour de table dans mysql incluant 2 jointure gauche sur d'autres tables. C'est toutes les tables de MyIsam.est mise à jour avec la jointure gauche verrouillera toutes les tables MyIsam mysql?

MISE À JOUR DB. tutorial_code LEFT JOIN tutorial ON tutorial. id_tutorial = tutorial_code. ref_tutorial LEFT JOIN tutorial_code_language ON tutorial_code_language. id_tutorial_code_language = '1' SET tutorial_code = 'code à ajouter', ref_tutorial_code_language = '2' O WH tutorial_code. id_tutorial_code = '3' et tutorial. ref_tutorial_main = '1' et tutorial_code_language. id_tutorial_code_language = « 1 »

Je me demande si seule la table mise à jour sera verrouillé pendant le processus ou si le total des 3 tables (la mise à jour un et les deux joints) sera verrouillé pendant le processus. En effet je ne veux pas que les tables jointes soient modifiées pendant le processus car la mise à jour en dépend.

Si les 2 tables jointes ne sont pas verrouillés, je suppose que je vais devoir utiliser le verrouillage et verrouiller toutes les tables écrire utilisés

Répondre

1

Ils seront tous serrure.

+0

merci beaucoup PMV. mais pouvez-vous me donner des informations qui le prouvent (documentation mysql, test effectué ...). – user538164

+1

Toutes les opérations d'écriture verrouillent TOUTES les tables MyISAM utilisées: http://dev.mysql.com/doc/refman/5.5/en/table-locking.html, passez à InnoDB :) – Kedare