2011-06-05 43 views
4

我正在軟件版本(6歲到當前模式)之間遷移SQL 2008 R2數據庫。有幾個審計錶帶有SQL TimeStamp列。我們通過將原始表格中的數據複製到新結構中來做到這一點 - 這一變化相當複雜,正如您在6年後所預期的那樣。使用時間戳列遷移數據庫表

當我將它移入新數據庫或保持此數據的審計可跟蹤性的最佳實踐方法時,是否有辦法保留時間戳的指紋?

感謝

回答

4

您可以轉換timestampvarbinary(8)保存它:

select cast([timestamp] as varbinary(8)) 

timestamp本身的價值不是特別有用:它並沒有轉化爲一個特定的時間。未來,MSDN建議將其更名爲更合適的rowversion

+0

謝謝;當你悲傷地遷徙時沒有辦法保持價值,這有點令人沮喪 - 請記住,你不知道爲什麼原始人決定首先使用時間戳。 – u07ch 2011-06-15 13:42:50

+0

「時間戳」值可以提供顯示動作何時實際發生的審計線索。如果與行動發生時間相關的法律和/或服務要求相關聯,我建議將原始數據庫保存爲將來可以檢查的格式,然後使用「遷移」標記標記記錄,以便了解時間戳成爲遷移的時間,而不是原來的交易時間。 – 2012-05-19 12:38:22

+0

@JulieinAustin:但時間戳不代表實際的時間。你不能看它,並說,「這行是最後寫在5月19日」。 – Andomar 2012-05-19 14:17:45