PL/SQLログの確認方法
PL/SQLでは、次の方法でログを参照できます。
- PL/SQLでDBMS_OUTPUT.PUT_LINE関数を使って必要な情報をログに出力しておいて、コード実行後にPL/SQLツールやコマンドラインでSET SERVEROUTPUT ON;を実行し、SHOW ERRORSコマンドでログを確認する。
たとえば:
SET SERVEROUTPUT ON;
BEGIN
DBMS_OUTPUT.PUT_LINE('Hello, PL/SQL!');
END;
/
SHOW ERRORS;
- DBMS_APPLICATION_INFOパッケージを使用:DBMS_APPLICATION_INFOパッケージ内でSET_MODULEおよびSET_ACTION関数を使い、関連情報をデータベースのV$SESSIONビューへ書き込むことで、V$SESSIONビューをクエリすることによって確認することができる。
たとえば
BEGIN
DBMS_APPLICATION_INFO.SET_MODULE('Module1', 'Action1');
-- 在此执行PL/SQL代码
DBMS_APPLICATION_INFO.SET_ACTION('Action2');
-- 在此执行其他PL/SQL代码
END;
/
SELECT module, action FROM v$session WHERE SID = SYS_CONTEXT('USERENV', 'SID');
- カスタムログテーブルを利用する:PL/SQLコード内にINSERT文を記述することで、任意のログテーブルを作成し必要な情報を挿入することが可能。その後、ログテーブルを照会してログ情報を取り出すことが可能。
例えば
CREATE TABLE plsql_log (
log_id NUMBER,
log_message VARCHAR2(100),
log_time TIMESTAMP
);
BEGIN
INSERT INTO plsql_log (log_id, log_message, log_time)
VALUES (1, 'Hello, PL/SQL!', SYSTIMESTAMP);
COMMIT;
END;
/
SELECT * FROM plsql_log;
PL/SQLログを確認する方法は上記のとおりで、状況に応じて適切な方法を選択してログ情報を確認してください。