SET_ACTION プロシージャは、現在のモジュール内で現在実行されている操作の名前を設定します。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
構文
DBMS_APPLICATION_INFO.SET_ACTION (
action_name IN VARCHAR2);
パラメータの説明
action_name パラメータは、現在のモジュール内で現在実行されている操作の名前を指定します。現在の操作が終了すると、このプロシージャが呼び出されて次の操作の名前を設定します。次の操作がない場合は、NULL を呼び出します。名前が32バイトを超えると切り捨てられます。
使用方法
操作名は、現在実行中の操作を説明するためのテキストである必要があります。各トランザクション開始前に操作名を設定することをお勧めします。 トランザクション完了後、トランザクション名を NULL に設定して、後続のトランザクションを正しく記録します。トランザクション名を NULL に設定しない場合、後続のトランザクションは前のトランザクションの名前を使用して記録される可能性があります。
例
CREATE or replace PROCEDURE addemployee(
ename VARCHAR2,
esalary NUMBER,
emanager NUMBER,
etitle VARCHAR2,
ecommission NUMBER,
edepartment NUMBER) AS
BEGIN
DBMS_APPLICATION_INFO.SET_ACTION(
action_name => 'count the employee');
SELECT COUNT(*) FROM emp;
DBMS_APPLICATION_INFO.SET_ACTION(null);
END;