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;