2015-07-21 73 views
0

我有幾個用戶試圖同時使用PHP腳本訪問表。從PHP腳本獲取鎖MySql表

下面是一些代碼:

$result = mysql_query("SELECT ID FROM usersPark 
    WHERE isSharing = '1' and email != '$email' and isBooked != 1") 

現在,如果$結果不是空的,我需要設置isBooked = 1是這樣的:

UPDATE `usersPark` SET `isBooked` = 1,` WHERE ID = ... 

我想,我需要獲得一個鎖在腳本的開頭,在第一個查詢之前。我怎樣才能鎖定?

+0

可能重複的[如何在php中鎖定mysql表](http://stackoverflow.com/questions/8576125/how-to-lock-mysql-tables-in-php) – Glorfindel

回答

0

如果您的表使用的是InnoDB,那麼這支持兩種類型的鎖定讀取,您可以使用它。

您可能會想要使用SELECT ... FOR UPDATE - 或類似的東西。我可以在這裏寫一下,但MySQL文檔在這方面比較好,所以請檢查一下here