SQL ID を使用して、SQL トレース追跡からテンプレート化された SQL ステートメントを削除します。SQL ID の代わりに特定の SQL テキストを提供してステートメントを削除するには、dbms_sql.delete_trace を使用します。
構文
dbms_sql.delete_trace_by_sqlid('<schema>', '<sql_id>')パラメーター
| パラメーター | 説明 |
|---|---|
schema | スキーマ名。 |
sql_id | SQL ステートメントの ID。 |
注意事項
プライマリノード: 削除はプライマリノードに永続的に保存されます。関連するレコードは mysql.sql_sharing テーブルから削除され、読み取り専用ノードに同期されます。
読み取り専用ノード: 削除は永続的に保存されません。これは、ストアドプロシージャが呼び出されたノードにのみ適用されます。クラスターエンドポイントを介してデータベースにアクセスする場合、テンプレート化された SQL ステートメントは自動的にプライマリノードにルーティングされます。
例
次の例は、追跡から削除する SQL ステートメントを特定する3つの方法を示しています。
明示的な SQL ID:
call dbms_sql.delete_trace_by_sqlid('test', '82t4dswtqjg02');`polar_sql_id()` を使用して SQL テキストから派生した SQL ID:
call dbms_sql.delete_trace_by_sqlid('test', polar_sql_id('select * from t where c1 > 1 and c1 < 10'));SQL テキストを直接指定:
call dbms_sql.delete_trace_by_sqlid('test', 'select * from t where c1 > 1 and c1 < 10');ステートメントが正常に実行されると、指定された SQL ステートメントは SQL トレース追跡から削除されます。