該程序的現有設計是將所有更改都寫入具有時間戳記的更改日誌表中。爲了獲取物品屬性的當前狀態,我們將JOIN
加入到更新日誌表中,並取出具有最近時間戳的行。我應該如何可靠地標記SQL Server表中的最新行?
這是一種難以跟蹤當前值的混亂方式,但我們目前無法立即更改此更改日誌設置。
我打算稍微修改行爲,在變更日誌表中添加一個「IsMostRecent」位。這將允許我簡單地拉取具有該位設置的行,而不是聚合或遞歸查找。
你會採用什麼策略來確保這個位總是適當的設置?或者是否有一些替代方法可以建議哪些不影響當前日誌記錄表的使用?
目前我正在考慮的觸發方式,從而關斷位的所有其他行,然後打開它的最新行上INSERT
你有更多的讀取或插入?哪個更加時間敏感? – bendataclear
@bendataclear我讀取的內容大概是插入的10倍,但真正的難點在於何時需要進行聚合。 – Matthew