0
我需要每小時將平面文件導入到數據庫表中,但文件本身由應用程序不斷更新(文件不鎖定,因此沒有問題)。我需要的是確保我只導入最近一小時的最新數據。SSIS平面文件導入 - 滾動數據
因此,我需要確保表中沒有重複的數據,並且只能爲該小時帶來數據。希望這是有道理的!哦,可悲的是沒有辦法改變日誌文件創建一個小時!
謝謝
我需要每小時將平面文件導入到數據庫表中,但文件本身由應用程序不斷更新(文件不鎖定,因此沒有問題)。我需要的是確保我只導入最近一小時的最新數據。SSIS平面文件導入 - 滾動數據
因此,我需要確保表中沒有重複的數據,並且只能爲該小時帶來數據。希望這是有道理的!哦,可悲的是沒有辦法改變日誌文件創建一個小時!
謝謝
您可以嘗試最大日期。
或者像這樣的東西。
刪除在第一步的最新數據:
DELETE FROM [DATABASE].[dbo].[TABLE]
WHERE [DATE] > DATEADD(hour, -1, GETDATE())
然後
更新:
SELECT * FROM [DATABASE].[dbo].[TABLE]
WHERE [DATE] > DATEADD(hour, -1, GETDATE())
所以你刪除的最新數據,然後一切從那裏加載再次。
HTH
您是否有平面文件中的任何日期列,指定何時更新? – praveen 2013-05-08 08:10:18
是的,有記錄新記錄時的日期時間。你認爲我可以從表中做最大日期,只更新記錄更大的地方? – GPH 2013-05-08 08:13:33
在SSIS中以'LastRunDate'創建一個變量。在平面文件源使用溢出轉換並檢查'FlatFlitDate> = LastRunDate'。如果在目標中也有'日期時間'列,則從此處填入LastRunDate的值列。 – praveen 2013-05-08 08:17:40