我有大約50k條目,我通過PHP插入到MySQL中。由於該系統允許多個用戶同時登錄並執行相同的插入數據操作,所以我們假設USER1啓動「插入」並且在相同的毫秒內,USER2開始在同一個表中插入數據 - 我很好奇MySQL是否會等待USER1完成處理並處理USER2條目,否則它會同時插入?在PHP中插入大量的行和自動增加ID
因此,遵循該邏輯,USER1的插入ID將從50k到100k從1到50k和USER2,或者在另一方面將它們洗牌?
...如果它會做「洗牌」有沒有辦法來防止這種情況?
P.S.我知道 - 我可以用user_id添加額外的字段,這樣我就可以區分哪個用戶做了實際的「輸入」,但是在這種情況下,我真的很想保留1-50k的空間用於USER1,50k-100k空間用於USER2。 ...
但是,如果他確實鎖定了表格,USER2的動作會給出錯誤,不會嗎? – 2013-02-11 18:27:28
@Marco不,它只會延遲用戶2,直到用戶1解鎖桌子爲止。 (除非用戶2明確地想要失敗,如果表被鎖定或用戶2發生超時) – deceze 2013-02-11 18:28:13
感謝您的回覆。 – Peter 2013-02-11 18:44:44