最新回答 / 慕夢(mèng)前來
sql的語句的問題
最新回答 / 楓荇
您好!@lancoliu?case語句是保證不了原子性的。但可以使用case語句來測(cè)試執(zhí)行值的分支,最終來確定要更新的值。update 語句是執(zhí)行在事務(wù)之中,不管是自動(dòng)提交還是手動(dòng)提交,都存在一個(gè)事務(wù),那么在這個(gè)事務(wù)中是滿足原子操作的。case語句和原子性沒有任何關(guān)系,并不能保證原子性,只是用在分支測(cè)試而已,課程中的案例是用在update 語句中,簡(jiǎn)單理解就是數(shù)據(jù)庫事務(wù)中的if else代碼判斷而已。
講師回答 / 楓荇
@qq_慕雪2491004這個(gè)是寫的一個(gè)bug,哈哈,不過問題不大,缺少自動(dòng)化測(cè)試代碼錄制課程時(shí)沒有發(fā)現(xiàn),下面是同學(xué)的bug解決方法,請(qǐng)移步參考:http://yifanck.cn/qadetail/303903
講師回答 / 楓荇
嗯,是的,課程中的main方法只是演示,并不是生成一個(gè)真實(shí)的紅包序列,但同樣的代碼我在mac下也不會(huì)出現(xiàn)生成同樣的數(shù)字的現(xiàn)象,這個(gè)問題還是需要找到原因的。你的代碼實(shí)際上是生成了一個(gè)真實(shí)的序列,是沒有問題的。
2019-04-15
講師回答 / 楓荇
@我們啲承諾?這個(gè)是寫的一個(gè)bug,哈哈,不過問題不大,缺少自動(dòng)化測(cè)試代碼錄制課程時(shí)沒有發(fā)現(xiàn),下面是同學(xué)的bug解決方法,可以參考http://yifanck.cn/qadetail/303903
2019-04-02
講師回答 / 楓荇
?您好!這個(gè)問題是因?yàn)闊o法訪問谷歌地址的原因,可以通過手動(dòng)下載GitHub上的代碼來解決:cd /path/to/$GOPATH/src/golang.org/x/?git clone?https://github.com/golang/oauth2.git同樣的方法適用于golang.org/x/中所有的包,這些包都可以在https://github.com/golang倉(cāng)庫中找到。
2019-03-27
最贊回答 / 全障攻城師
https://gitee.com/wendell01/resk-pilot
講師回答 / 楓荇
@Q646448149?您好!這個(gè)案例中關(guān)鍵的邏輯是對(duì)數(shù)據(jù)版本字段的維護(hù)和使用數(shù)據(jù)版本字段進(jìn)行CAS。第一個(gè)問題:通過在where條件中添加數(shù)據(jù)版本字段的驗(yàn)證,來確定要更新的數(shù)據(jù)是最新的才能被修改;如果已經(jīng)被修改,數(shù)據(jù)版本就會(huì)被更新,那么當(dāng)前更新就要被更新失敗。第二個(gè)問題:這種方案不通用,但在很多場(chǎng)景中來代替鎖,簡(jiǎn)單說就是避免使用鎖來優(yōu)化性能。
2019-03-03
最新回答 / 慕夢(mèng)前來
分析得很有道理 ,不錯(cuò),good