2012-09-17 36 views
0

我開發數據管理系統,在那裏我有兩個用戶鍵入:日誌,恢復用戶改變

  • 一個用於管理。
  • 另一個用於較低級別的用戶。

管理員應該看到用戶完成的所有更改,他應該能夠恢復更改。

應該跟蹤具有多個表的數據庫模式,跟蹤在數據庫上完成的任何新的ADD,DELETE或UPDATE的最佳方法是什麼?

  • 日誌
  • Mirriroing表

或更好的方法,請諮詢。

謝謝

+0

這將是很難實現的,需要顯著的工作 - 好運氣。當然這取決於具體情況。 – 2012-09-17 20:48:37

+0

如果它的wiki很容易,他們有內置 – 2012-09-17 20:53:07

+0

@Dagon我堅持嘗試解決這個問題很長一段時間,畢竟我的思維失敗後,我問了這個在stackoverflow。 – shox

回答

0

在表上放置觸發器以寫入第二個表。存儲操作(INSERT,UPDATE,DELETE),對於UPDATES和DELETES,存儲先前的值。存儲表名,主鍵,用戶名和更改的時間戳。

允許管理員瀏覽這個第二張表並給他們一個工具來回滾他們不喜歡的任何改變。

不要讓人們寫入審覈表直接:)

0

我使用修訂系統。我使用兩張表,主錶帶有ID和可能的標題,以及帶有parentId列的修訂表,爲每次更改都添加一個新條目。它工作良好,因爲您可以將所有編輯加載到表中以查看它們,並且始終可以刪除最新的修訂版。

日誌也可以工作...但動態恢復更改很難。