2017-11-27 4 views
-2

問題が1つあります。私はPL/SQLから始めています。私は最後に使用された/開いているテーブルを表示するプログラムを作成したいと思います。はいの場合はどうすれば教えていただけますか?私はOracle 11gデータベース+ SQL Developerを使用しています。おかげさまで Oracle PLSQLが最後に使用され、開いているテーブルプログラム

+0

他の人に質問するのではなく、問題のコード/努力を追加してください。 –

+0

私は家に帰るとすぐにやります。しかし、私はちょうど誰も働かなかったいくつかの事を試みました。私は昨日それから始めました。だから私はそれを理解する必要があるかどうかを尋ねるのです。以前はPL/SQLを見たことがありませんでした。私はちょうどいくつかの選択、更新などをやっていた。 – cRiSiT

+0

監査ではオーバーヘッドが発生し、異なるシステムでは異なる監査が必要なため、Oracleはデフォルトでこの情報を提供しません。 AUDITを使用してこの情報の追跡を開始します(DBA権限が必要です)。 [詳細はこちら](https://docs.oracle.com/database/121/SQLRF/statements_4007.htm#SQLRF01107)。 – APC

答えて

0

ALL_OBJECTSデータ・ディクショナリは、TABLE_NAMEとしてオブジェクト・フィルタを 'TABLE'、object_nameをTABLE_NAMEとして使用できます。最後のDDLが実行されます。これは特別な追加のDBA権限を必要としません。

サンプルクエリ:ALL_OBJECTSからSELECT LAST_DDL_TIME WHERE OBJECT_NAME = 'TABLE_NAME';

+0

私はそれを試して、それが働いた:)しかし、それは私が探しているのは、彼がユーザーと操作を見て、そしてどのテーブルに表示されるのかだけを示した。 私は以前に提案された人物として監査を試みました。私がaudit_trailを選択したときに機能しましたが、 "SQL_TEXT"フィールドは常にNULLでした。 何とかやり直してください。 – cRiSiT

関連する問題