2016-01-29 31 views
-1
SQL> CREATE OR REPLACE 
2 TRIGGER c##iam_admin.AFTER_LOGON_TRG AFTER LOGON ON c##iam_admin.SCHEMA 
3 BEGIN DBMS_APPLICATION_INFO.set_module(USER, 'Initialized'); 
4 EXECUTE IMMEDIATE 'ALTER SESSION SET current_schema=c##iam'; 
5 END c##iam_admin.AFTER_LOGON_TRG; 
6/
Warning: Trigger created with compilation errors. 

當我檢查顯示錯誤,它給遇到符號「。」當期待以下其中一項時:

Errors for TRIGGER C##IAM_ADMIN.AFTER_LOGON_TRG: 

PLS-00103:出現符號 「」當期待 以下之一:

+0

下面擴展了一下什麼? – GolezTrol

+0

爲什麼在明確使用Oracle 12時添加了Oracle 11標籤? –

+0

以下之一:「;」 – nitish

回答

1

未經測試,但結束標記應該只是一個標籤,而不是一個合格的名稱。嘗試:

create or replace trigger c##iam_admin.after_logon_trg 
    after logon on c##iam_admin.schema 
begin 
    dbms_application_info.set_module(user, 'Initialized'); 
    execute immediate 'ALTER SESSION SET current_schema=c##iam'; 
end after_logon_trg; 

我不能現在就測試和我不知道,你甚至可以用一個結束標記出現,因此,如果還是不行,請嘗試使用剛剛

end; 
結束
+0

我確認了一個示例觸發器威廉的回答是正確的。 – StewS2

相關問題