2011-05-01 61 views
0

我想知道如何將編輯後的值保存在sql server中,以便在此之後返回值。sql編輯保存日誌

例如:

我有它的地位加工時,一年後它的狀態是「關閉」用戶狀態時,它是工作的ID的狀態爲1保存爲表用戶的ID當它關閉時,我將id更新爲2.我怎麼能看到這個用戶從日期到日期正在工作,現在他已關閉。

感謝您的回覆。

你有我的問題。

但是問題這裏是我在這裏只給出一個用戶狀態的例子,但問題是我有很多表,我改變他們的ID。例如,我有城市的Id或產品編號等

如果我將它保存在同一個用戶表中,例如我丟失了用戶ID,因爲每次更新用戶時都會帶上一個新的ID,或者如果我做一個用戶狀態表我會做20個或更多的表,如用戶狀態歷史記錄。另外我想保存文本不僅是id的。例如,用戶從以前的地址得到了一個新的地址,我想從這個日期開始說,他現在住在另一個地方。

任何建議請:)。

回答

0

你的問題很不清楚,但我認爲你的意思是「我有一個帶狀態列的用戶表,我需要查看狀態更改的歷史記錄,因爲當我更改特定用戶的狀態值時,我失去先前的價值「。

如果這是正確的,一個簡單的解決方案是添加一個名爲UserStatus或其他任何表,並在每次用戶狀態更改時向其中插入新行。然後,您可以輕鬆查看每個用戶的狀態更改的完整歷史記錄,還可以通過查詢該用戶的「最新」行來查找任何用戶的當前狀態。

原則上,如果您添加UserStatus表,則用戶表上的狀態列將不必要,因此您可以將其刪除。如果這不可行(例如,您不控制使用該表的應用程序),那麼您可以在用戶表中添加一個觸發器,以便在更新狀態時自動填充UserStatus表。

+0

你有我的問題。 但是,這裏的問題是,我只給出了一個用戶狀態的例子,但我有很多表格,我改變他們的ID。例如,我有城市的Id,產品的Id等 如果我將它保存在同一個用戶表中,例如我丟失了用戶ID,因爲每次更新用戶時都會帶上一個新ID,或者如果我做了一個用戶狀態表我會做20個或更多的表,如用戶狀態。另外我想保存文本不僅是id的。例如,用戶從以前的地址得到了一個新的地址,我想從這個日期開始說,他現在住在另一個地方。 – user733256 2011-05-04 06:16:52

0

我的建議是有兩列

一個是工作/日期和關閉/日期,這樣就可以保持數據的歷史。