カーソルがあり、実行中にカーソルのテキストをログに記録したい場合、何らかの方法でカーソル名を使用して SQL を取得することは可能ですか?
例えば、
OPEN cursor_1 for
SELECT ...
cursor_1%NAME
カーソルの他の属性を使用できるのと同じようなことができると信じたいです。( %ISOPEN、%FOUNDなど)。
カーソルがあり、実行中にカーソルのテキストをログに記録したい場合、何らかの方法でカーソル名を使用して SQL を取得することは可能ですか?
例えば、
OPEN cursor_1 for
SELECT ...
cursor_1%NAME
カーソルの他の属性を使用できるのと同じようなことができると信じたいです。( %ISOPEN、%FOUNDなど)。
私の知る限り、カーソル名を解析中のSQLテキストにリンクする方法はありませんが、 usingと結合V$open_cursor
すると、開いているカーソルについてログに記録されているSQLステートメントの詳細を引き出してログに記録できるはずです。v$sql
SQL_ID
SELECT sql_id,
user_name,
sid,
saddrsql_fulltext
FROM v$sql
join v$open_cursor USING (sql_id)
おそらく、SQL テキストをカーソルと関連付けることができますが、それは手動のプロセスである必要があります。