使用 Credly 平台將獲得的微軟認證資訊分享到 LinkedIn

CURSOR 指標進行資料表操作 | 2019 鐵人賽

先前某個情境

Table-A

Id    A   B   C
1    A1  B1  123
2    A1  B2  551
3    A2  B3  13

Table-B

Id    A   B   D
1    A1  B1  11
2    A1  B2  76
3    A2  B3  9

要將 Table-A 的 C 欄位資料儲存到 Table-B 的 D 欄位 使用 CURSOR 將 Table-A 的 A|B 欄位逐筆比對更新到 Table-B 中的 D 欄位

為了保持一致性設定了 Transaction 為了比對快速對 A|B 欄位加入了索引

問題解決了 但是卻產生了另一個問題

先來討論 CURSOR 的特性 CURSOR 僅使用「單一核心」並逐筆進行(不會鎖定整張資料表)

上述情境最佳解

應使用 UPDATE JOIN 來善用多核心進行處理 CURSOR 僅單一核心的特性會讓資料處理時間相較之下較久 這時再加上 Transaction 等於又將資料表鎖定起來

  • 要減少資料鎖定情況可以考慮使用 CURSOR
  • 使用 CURSOR 不應使用 Transaction

先前使用 CURSOR 情境

將前一個月份的「存取紀錄資料表」搬移到封存的資料表 此時「存取紀錄資料表」還是處於上線狀態 新的紀錄還是可以寫到「存取紀錄資料表」中

留言

  1. Casino Game For Sale by Hoyle - Filmfile Europe
    › casino-games › casino-games › casino-games › casino-games Casino air jordan 18 retro racer blue free shipping Game for sale by 하이스코어걸 Hoyle on Filmfile Europe. how can i order air jordan 18 retro racer blue Free shipping for air jordan 18 retro varsity red most countries, no download required. new air jordan 18 retro red Check the deals we have.

    回覆刪除

張貼留言