我有一個C#項目,它從MySQL數據庫表中獲取數據並更新列(StatusID = 5
)。它使用StatusID = 4
搜索row
。選擇命令有時獲得相同的行
讓我告訴你的流程:
SELECT * FROM ACCOUNTS WHERE STATUSID = 4
// After that I assign an object with the data i got.
UPDATE ACCOUNTS SET STATUSID = 5 WHERE ACCOUNTNAME = '#ACCOUNTNAME'
這個流程在幾毫秒,但問題是,這個項目是在同一時間運行在700電腦,所以有時達到碼的同一部分在同一時間,所以1-5個人電腦會得到相同的帳戶。所以我需要一個像trigger
或使我Select
一個帳戶時,它需要幾秒鐘,如果沒有改變再次被選中類似的東西。
感謝您的關注。
看起來你需要交易 – bradbury9
@ bradbury9,不確定這種情況下的交易意味着什麼! – GameHackerPM
你應該閱讀[transactions](https://dev.mysql.com/doc/refman/5.7/en/commit.html)。另外請確保使用'select ... for update'。但首先閱讀有關交易。 – Solarflare