我可以同时触发 'Before' 和 'After' 事件吗?

Can i have trigger for both 'Before' and 'After' events?

我通过以下代码尝试了上述场景

CREATE OR REPLACE TRIGGER test_bf_af2
AFTER LOGON ON SCHEMA and 
BEFORE LOGOFF ON SCHEMA

BEGIN
  --some logic
END;
/

但给了我错误说

Error report: ORA-04079: invalid trigger specification

  1. 00000 - "invalid trigger specification"

*Cause: The create TRIGGER statement is invalid.

*Action: Check the statement for correct syntax.

那么,是否可以同时拥有这两种类型?如果是,我该如何实现?

使用常规 DML 触发器 tt 可以在同一个触发器中包含多个事件(插入、更新)。但是,时间 必须相同:之前或之后。

与系统触发器相同。由于 Oracle 既不支持 BEFORE LOGON 也不支持 AFTER LOGOFF(原因很明显),因此您需要两个单独的触发器。