我正在做一個表更新在mysql中包括其他表上的2個左連接。這是所有MyIsam表格。用左連接更新會鎖定所有MyIsam表mysql嗎?
UPDATE
DB
。tutorial_code
LEFT JOINtutorial
ONtutorial
。id_tutorial
=tutorial_code
。ref_tutorial
LEFT JOINtutorial_code_language
ONtutorial_code_language
。 'id_tutorial_code_language
='1'SETtutorial_code
='要添加的代碼',ref_tutorial_code_language
='2'其中tutorial_code
。id_tutorial_code
='3'和tutorial
。ref_tutorial_main
='1'和tutorial_code_language
。id_tutorial_code_language
=「1」
我想知道如果只更新該表將在該過程或如果總的3個表(更新一個和所述兩個連接的)的將在處理過程中被鎖定被鎖定。事實上,我不希望在過程中修改連接的表,因爲更新取決於它們。
如果2頁連接的表沒有被鎖定,我想我將不得不使用鎖和鎖寫每一個表中使用
非常感謝PMV。但你能給我提供證明它的信息嗎(mysql文檔,執行測試...)。 – user538164 2010-12-12 10:10:56
ALL寫入操作鎖定所有使用的MyISAM表格:http://dev.mysql.com/doc/refman/5.5/en/table-locking.html,切換到InnoDB :) – Kedare 2010-12-19 11:22:48