今天做專案的時候遇到一個問題,情況如下:
為了使三張表中uid欄位統一,設定了uid欄位不自增。
但是為了使uid增大,使用瞭如下方法:每次插入資料前,先要查詢一下目前uid的最大值,然後把當前uid+1後生成一個新uid,然後把新的uid作為新的插入行的uid。
這樣操作首先我感覺會產生兩個問題:
1.多了一個查詢操作,產生效率問題,當然這不是最重要的。
2.我感覺高併發情況下,會出現問題
經過在群裡問一些高手,確定了,這樣操作肯定會產生高併發下出現問題。
總結:
“先查詢,後插入,必然會出現問題”這是一個高手告訴我的。
解決方案:
1.使用事務處理
2.修改演算法