3

IBM DB2 で、特定のタイムスタンプ以降に変更 (更新/追加/削除) されたテーブルのリストを取得する方法はありますか?

私が直面している問題は、7 月 25 日にライブ db サーバーから 1 つのボックスで 1 つのバックアップを復元し、機能パックを有効にしている間にこの復元された DB を更新したことです。顧客がアクセスしているため、ライブ DB サーバーが変更され、box1 に追加のテーブル/データがあるため、最新のバックアップを復元できません。

そのため、最後のバックアップ以降に変更されたテーブルのリストを知りたいので、それらのテーブルを手動で更新できます。助けてください。

4

2 に答える 2

5

DB2 for Linux/Unix/Windows を使用している場合、次のクエリで必要なものが得られるはずです。

SELECT TRIM(TABSCHEMA) || '.' || TRIM(TABNAME),
       MAX(CREATE_TIME,ALTER_TIME)
FROM SYSCAT.TABLES
ORDER BY 2 DESC

メインフレームを使用している場合、これで次のことができます。

SELECT RTRIM(CREATOR) || '.' || RTRIM(NAME),
       MAX(CREATEDTS,ALTEREDTS)
FROM SYSIBM.SYSTABLES
ORDER BY 2 DESC

ただし、これらのテーブルは削除されるとシステム カタログから削除されるため、削除されたテーブルは表示されません。

于 2012-08-02T12:54:21.873 に答える
0

テーブルの削除操作が行われた詳細をテーブルに記録する削除トリガーをお勧めします。

于 2014-06-24T14:30:13.537 に答える