一解決友好的髒讀髒存的方法

來源:互聯網
上載者:User
*先說下事情的起因,公司的財務總監查看了公司的總帳是500萬,前段時間支出了10萬但是系統還沒有走帳,這時總監就分咐小李去走下帳。
由於總監記性不太好,剛通知完小李又通知了小曾。巧的是小李和小曾同時查看了公司的帳目表(比如GRIDVIEW),發現現帳確實是500萬。
於是小李先走了10萬,搞定回家吃玉米了。這時雖然小李已經走了10萬,但是由於是web系統,本來就是不需連線的。這時小曾也沒有重新整理頁面。
還是顯示的500萬總帳,於是小曾拿下正在放著獅子座的MP3的耳機,又走了10萬。這時候小李和小曾都以為已經完滿的完成了任務。誰知第二
天上班總監把小李小曾一同叫去了辦公司,對他們說“我說李哥、曾哥。你們怎麼回事啊?讓你們走10萬的帳確走了20萬。你們是不想混了是嗎?
這時這李小曾你看看我,我看看你,心裡茫然(本故事純屬加班到深夜已經到了神呼的狀態的人虛購)

下面來說一下我的解決辦法。比如下面的表(不要考慮資料庫的結構,我是說假如)
SysNo  總帳
   1      500萬

我們在後面增加一列,我採用的是GUID,當然SQLSERVER也有自己的時間戳記方式記錄修改狀態
SysNo  總帳   更新標識(GUID)
   1     500萬   GUID1

這樣,還是上面的情況,當小要更新時,會用用戶端的GUID碼去進行比對,這時用戶端GUID碼為GUID1和資料庫中一置,進行正常的更新操作,並
重建新的GUID更新標識。

這時小曾也進行更新操作,但是對比GUID更新標識的時候探索資料庫中的GUID碼為GUID2與用戶端的GUID1不對應,這時系統會給予一個友好的提示,
比如:“對不起,發生了友好衝突問題,請重新操作!”並同時更新下頁面重新讀取GUID標識碼,這時標識碼為GUID2再次更新時就可以正常更新了,但
是本例的情況更新後小增發現,哇已經是490萬了,那我就不用再走帳了。繼續啃他的玉米去了。

這隻是本人想的一個不是很正規的解決特有問題的方式,其它的方法還請有經液的人拍磚。

唉,時間不早了。回家休息吧,明天一早還要上班!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.