我有一個簡單的表在我的SQL Server 2012數據庫什麼方法可以讓我的數據庫在更新表或行被刪除時創建歸檔條目?
CREATE TABLE [dbo].[Content] (
[ContentId] INT IDENTITY (1, 1) NOT NULL,
[SubjectId] INT NOT NULL,
[Title] NVARCHAR (50) NOT NULL,
[Text] NVARCHAR (MAX) NOT NULL,
[Version] ROWVERSION NOT NULL,
[CreatedBy] INT NOT NULL,
[CreatedDate] DATETIME NOT NULL,
[ModifiedBy] INT NOT NULL,
[ModifiedDate] DATETIME NOT NULL,
CONSTRAINT [PK_Content] PRIMARY KEY CLUSTERED ([ContentId] ASC)
);
GO
CREATE NONCLUSTERED INDEX [Content_Subject_IX]
ON [dbo].[Content]([SubjectId] ASC);
GO
如果在此表用戶編輯或刪除數據,則所有的更改都將丟失。我真正喜歡的是以某種方式保留更改。
任何人都可以給我任何建議或指向我一個可能的解決方案。我接受任何建議,並歡迎一些想法。例如,創建一個歸檔表是否合理,如果我這樣做了,那麼我怎樣才能從數據庫中填充該表。有一個簡單的方法,我可以用觸發器做到這一點?
我希望有人能指出我正確的方向。我沒有DBA來徵求建議,所以我會很感激任何建議。
如果要保留所有數據,爲什麼用戶允許編輯現有信息,爲什麼不每次都簡單地添加新記錄? – 2014-09-29 12:40:01
我希望向用戶顯示當前數據,但允許管理員進入,編輯和更新備份以防管理員犯了錯誤。 – 2014-09-29 12:45:14
您可以設置SQL Server每天對數據庫進行備份,以防萬一有什麼不好的事情發生時有人可以恢復最新的備份。 – 2014-09-29 13:26:25