2017-03-21 20 views
0

Oracle EBRで奇妙な現象が発生しました。権限付与時に編集中にトリガーが失われる

私たちのデータベースでは、毎晩ジョブが実行され、特定のスキーマのすべてのテーブルとビューに対してグループに権限を与えます。そのスクリプトが実行された後、私たちは現在のデータベースのデフォルト版でいくつかのトリガを失いました。

私はそれを調べることができ、いくつかの複製手順があります。このコードの

CREATE OR REPLACE FORCE EDITIONING VIEW v1 AS SELECT * FROM v1_tbl; 
CREATE OR REPLACE TRIGGER TRG_V1 BEFORE 
    INSERT ON v1 FOR EACH row BEGIN 
    SELECT seq_v1.nextval INTO :new.cid FROM dual; 
END; 
/
Create edition e2; 
GRANT USE ON EDITION e2 to public; 

ALTER DATABASE DEFAULT EDITION = e2 

--Reconnect. 

GRANT SELECT v1 TO USER; 

結果は、エディショニング・ビューv1は版E2で再現されたということですが、トリガは、トリガが現在のエディションE2に消えるという結果とORA $ BASEにとどまります。

enter image description here

マニュアルトリガーがレクリエーション後ビューをエディショニングに保持すべきであるEBRによります。

すでにオラクルサポートのチケットを開いていますが、これまで使用可能なものは何も返されていませんでした。

誰かがこれを経験していて、それがバグか、それとも間違っているのか分かっていますか?

答えて

0

大丈夫です。これは少し奇妙です。私がエディショニングビューに何かを挿入すると、トリガーは最新版に更新され、うまく動作します。

SQL Developerを確認したところ、使用され再コンパイルされるまで、トリガーは最新バージョンでは表示されません。

関連する問題