バインド変数を使用したSQLでバインド変数の中身を参照するサンプルです。
サンプル
①バインド変数を使用したSQLを実行
1 2 3 |
var a NUMBER; exec :a := 10; select * from m_test where code = :a; |
②実行したSQLのSQL_IDを確認する
1 2 |
select sql_text, sql_id from v$sql order by first_load_time desc; |
③SQL_IDを条件として、v$sql_bind_capture を検索
1 2 |
SELECT name, datatype_string, value_string FROM v$sql_bind_capture WHERE sql_id = '2wpmfw9syk2j0'; |
②で取得したSQL_IDを条件として検索します。
- 結果例
- NAME DATATYPE_STRING VALUE_STRING ----- ---------------- -------------- :B1 NUMBER 10
:a は :B1に置き換わります。
解説
- v$sql_bind_captureを参照すると、バインド変数の中身を見ることができます。