2017年1月9日 星期一

17/30 網頁與資料庫#9 -- 開放式並行存取 (Optimistic Concurrency)

SqlDataSource控制項的設定步驟裡面
當您按下「進階」按鈕,就會產生對應的新增、刪除、修改的SQL指令
(上一篇文章 http://mis2000lab.blogspot.com/2017/01/1630-8-html.html )
有一個選項,名為「開放式並行存取 (Optimistic Concurrency)」
名詞有點坳口,這到底是什麼東西啊?
我用 Youtube影片為您示範一次,希望這樣比較容易明瞭。
SqlDataSource 開放式並行存取 (Optimistic Concurrency),以GridView為例
https://youtu.be/R9c3krJrZsE

其實,您在大型控制項的 xxx_Updating事件裡面可以看到這樣的程式碼,意思也差不多。
e.NewValues["欄位"]
e.OldValues["欄位"] ,簡單的說,這就是您修正「以前」,原本的數值
用來偵測、比較,您取出這一筆記錄時,是否有人也同時取出修改?
如果是的話,那麼您寫回資料庫時,就會被阻擋。
不知道我這樣解釋「開放式並行存取 (Optimistic Concurrency)」,有沒有比較清楚?
這個範例可以很明白的指出:
文字+圖片的傳統敘述,比不上現場操作(影片)的解說
可以讓人一看就懂。
下一篇文章,我們開始自己寫 ADO.NET 程式存取資料庫吧?不要再依賴精靈了
請看 http://mis2000lab.blogspot.com/2017/01/1830-adonet-1-adonet.html

沒有留言: