1
スキーマ内のテーブルの作成を追跡するためのテーブルを作成しましたが、トリガがコンパイルされると「ソケット"私はデータベースへの接続を失う。次のようにトリガーを使用しているときに "ソケットから読み取るデータがこれ以上ありません"
マイ監査テーブルには、次のとおりです。
CREATE TABLE TABLE_AUDIT(
DATE_CREATED DATE,
USERNAME VARCHAR2(30),
TABLE_NAME VARCHAR2(30))
そして、私のトリガー:
create or replace TRIGGER tableCreationTrigger
AFTER CREATE
ON SCHEMA
DECLARE
date_created TABLE_AUDIT.DATE_CREATED%type;
username TABLE_AUDIT.USERNAME%type;
table_name TABLE_AUDIT.TABLE_NAME%type;
BEGIN
date_created := sysdate;
SELECT USER
into username
from dual;
:New.table_Name := table_name;
INSERT INTO TABLE_AUDIT (DATE_CREATED, USERNAME, TABLE_NAME)
Values(DATE_CREATED, USERNAME, TABLE_NAME);
EXCEPTION
WHEN others THEN
DBMS_OUTPUT.PUT_LINE('Error on insert into table_audit');
RAISE;
END;
/