次のクエリを使用して、テーブルに存在するすべてのレコードの最終更新日時を取得しようとしています。その結果表示が正しくテーブルのいくつかのために タイムスタンプ付き最終更新レコード
SELECT SCN_TO_TIMESTAMP(ORA_ROWSCN),id FROM TABLE_NAME
が、私は、エラーメッセージ、次しまった他人のために
(私は自動生成されたHRスキーマからテーブルを使用しています。具体的には)ORA- 08181:指定された番号が有効なシステム変更でない数
ORA-06512: "SYS.SCN_TO_TIMESTAMP"、行に1
00000 - 「指定された数ではありません有効なシステム変更番号 "
*原因:指定されたscnが有効なscnの範囲を超えています。 *処置:有効なscnを使用してください。
なぜこのエラーメッセージが表示されますか?クエリを実行する前に、同じテーブルに対していくつかの挿入クエリと更新クエリを実行しました。
は(最後のDML操作のためのシステム変更番号)あなた
また、データの変更を追跡するために余分な列を持っている方が良いでしょう。 ORA_ROWSCNは非常に現実的ではなく、古いデータ(たとえば、あなたの場合)では機能しません。 – GurV