2010-12-10 37 views
0

我正在做一个表更新在mysql中包括其他表上的2个左连接。这是所有MyIsam表格。用左连接更新会锁定所有MyIsam表mysql吗?

UPDATE DBtutorial_code LEFT JOIN tutorial ON tutorialid_tutorial = tutorial_coderef_tutorial LEFT JOIN tutorial_code_language ON tutorial_code_language。 'id_tutorial_code_language ='1'SET tutorial_code ='要添加的代码',ref_tutorial_code_language ='2'其中tutorial_codeid_tutorial_code ='3'和tutorialref_tutorial_main ='1'和tutorial_code_languageid_tutorial_code_language =“1”

我想知道如果只更新该表将在该过程或如果总的3个表(更新一个和所述两个连接的)的将在处理过程中被锁定被锁定。事实上,我不希望在过程中修改连接的表,因为更新取决于它们。

如果2页连接的表没有被锁定,我想我将不得不使用锁和锁写每一个表中使用

回答

1

将他们全部锁。

+0

非常感谢PMV。但你能给我提供证明它的信息吗(mysql文档,执行测试...)。 – user538164 2010-12-12 10:10:56

+1

ALL写入操作锁定所有使用的MyISAM表格:http://dev.mysql.com/doc/refman/5.5/en/table-locking.html,切换到InnoDB :) – Kedare 2010-12-19 11:22:48