簡體   English   中英

數據倉庫:找出 sql 服務器表的哪些行更改以方便數據倉庫

[英]Data warehouse: Figuring out what rows changed of a sql server table to facilitate data warehouse

業務場景,尋求一種編程方式:

每天晚上,我必須從生產數據庫更新數據倉庫數據庫中的表 ABC。 該表有數百萬行,所以我想有效地做到這一點。

該表沒有任何類型的時間戳標記 (LastUpdated Date\Time)。

該數據庫是由我們運行其軟件的供應商創建的,它們使我們能夠看到我們的數據。 在請求新列來存儲諸如 LastUpdate DateTime stamp 之類的信息方面,我們可能沒有太多優勢。

有沒有辦法在沒有此類信息的情況下識別那些已更改或添加的行。

例如,是否存在與表記錄關聯的可查詢物理行號之類的東西,這可能有助於我們找到解決方案? 如果可以查詢,也許 go 可以順序查詢,那么也許有一種方法可以獲取插入的行。

更新的行,我不太確定。

只是在這個時間點提出一些想法,看看是否有針對這種情況的有效解決方案。

理想情況下,該解決方案將面向我們可以每天晚上運行的存儲過程作為工作。

謝謝你。

我看到了這條評論,但我不太確定解決方案是否有效: 查找更改的行(帶有空值的復合鍵)

請檢查 MERGE 運算符,您可以創建一個 SQL 服務器作業,它可以執行 MERGE 腳本來檢查和更新更改(如果有)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM