鎖定 MyISAM 表中的單行
在 MySQL 中,MyISAM 表不支援行級鎖定。不過,如果您需要行級鎖定功能,可以考慮切換到提供此功能的 InnoDB。
切換到 InnoDB 進行行級鎖定
至啟用行級鎖定,您需要將使用者表從 MyISAM 轉換為 InnoDB。您可以使用下列指令來執行此動作:
ALTER TABLE <user_table> ENGINE=InnoDB;
轉換為 InnoDB 後,您可以使用 SELECT ... FOR UPDATE 語句來取得特定資料列的排他鎖。這將阻止其他會話修改或存取鎖定的行,直到鎖被釋放。
這是一個範例:
SELECT * FROM <user_table> WHERE <condition> FOR UPDATE;
注意:您應該釋放鎖定完成該行的操作後立即進行。這可以透過發出 COMMIT 或 ROLLBACK 語句來完成。
其他資源:
以上是如何在MySQL的MyISAM表中實現行級鎖定?的詳細內容。更多資訊請關注PHP中文網其他相關文章!