2016-09-24 65 views
0

我想查找在特定日期後更新的記錄,但沒有update_date列。Oracle:在特定日期後更新記錄

在搜索時,我發現Oracle 10g現在可以使用ORA_ROWSCN

SELECT ORA_ROWSCN, last_name FROM employees WHERE employee_id = 188;

但我認爲這是對特定行非常有用。

讓我知道我應該如何實現這一點?

請幫助

回答

1

如果你想要這個信息,那麼你應該在表createdAtupdatedAt列。對於甚至是半生產系統中的任何表格,這些都是很好的想法,所以這些信息很容易獲得。

你也應該做備份,這可以用來識別已經發生了什麼變化。 Oracle審計表是可以提供幫助的另一個功能。

已知存在使用ora_rowscn的方法需要使用它的方法。 Here是一個討論。

當然,如果尚未實施,正確的列,備份和審計對現在不起作用。函數scn_to_timestamp()可用於將內部scn號碼轉換爲時間戳。閱讀關於它here。但是,這應該被視爲絕望的措施。使用它應該鼓勵您實施更可靠的方法來跟蹤數據庫更改。