ヘッダーをスキップ
Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンス
10g リリース2(10.2)
B19245-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

88 DBMS_RLMGR

DBMS_RLMGRパッケージには、Rules Managerを使用してルールおよびルール・セッションを作成および管理する様々なプロシージャが含まれています。


関連項目:

詳細は、『Oracle Databaseアプリケーション開発者ガイド-Rules ManagerおよびExpression Filter』を参照してください。

この章では、次の項目について説明します。


Rules Managerサブプログラムの要約

表88-1に、DBMS_RLMGRパッケージのサブプログラムを示します。

特に明記されていないかぎり、DBMS_RLMGRパッケージに定義されているプロシージャに渡されるすべての値と名前で、大/小文字は区別されません。大/小文字の区別を保つには、値を二重引用符で囲んでください。

表88-1 DBMS_RLMGRパッケージのサブプログラム

サブプログラム 説明

ADD_ELEMENTARY_ATTRIBUTEプロシージャ


指定の属性をイベント構造(Expression Filterの属性セット)に追加します。

ADD_EVENTプロシージャ


アクティブなセッションのルール・クラスにイベントを追加します。

ADD_FUNCTIONSプロシージャ


イベント構造(Expression Filterの属性セット)を含むファンクションの承認リストに、ファンクション、タイプまたはパッケージを追加します。

ADD_RULEプロシージャ


ルール・クラスにルールを追加します。

CONSUME_EVENTファンクション


イベント識別子を使用してイベントをコンシュームし、対応するルールをアクションの実行用に準備します。

CONSUME_PRIM_EVENTSファンクション


1つ以上のプリミティブ・イベントを悉無律セマンティクスに基づいてコンシュームします。

CREATE_EVENT_STRUCTUREプロシージャ


イベント構造を作成します。

CREATE_RULE_CLASSプロシージャ


ルール・クラスを作成します。

DELETE_RULEプロシージャ


ルール・クラスのルールを削除します。

DROP_EVENT_STRUCTUREプロシージャ


イベント構造を削除します。

DROP_RULE_CLASSプロシージャ


ルール・クラスを削除します。

GRANT_PRIVILEGEプロシージャ


ルール・クラスに対する権限を他のユーザーに付与します。

PROCESS_RULESプロシージャ


指定したイベントのルールを処理します。

RESET_SESSIONプロシージャ


データベース・セッション内で、新しいルール・セッションを開始します。

REVOKE_PRIVILEGEプロシージャ


ルール・クラスに対するユーザー権限を取り消します。



ADD_ELEMENTARY_ATTRIBUTEプロシージャ

このプロシージャは、指定の属性をイベント構造(Expression Filterの属性セット)に追加します。このプロシージャはオーバーロードされています。複数の機能を構文形式ごとに、定義とともに示します。

構文

指定の要素属性を属性セットに追加します。

DBMS_RLMGR.ADD_ELEMENTARY_ATTRIBUTE (
              event_struct   IN   VARCHAR2,
              attr_name      IN   VARCHAR2,
              attr_type      IN   VARCHAR2,
              attr_defvl     IN   VARCHAR2 default NULL);

表の別名である要素属性を識別して、イベント構造に追加します。

DBMS_RLMGR.ADD_ELEMENTARY_ATTRIBUTE (
              event_struct   IN   VARCHAR2,
              attr_name      IN   VARCHAR2,
              tab_alias      IN   rlm$table_alias);

パラメータ

表88-2 ADD_ELEMENTARY_ATTRIBUTEプロシージャのパラメータ

パラメータ 説明

event_struct

この属性を追加するイベント構造(属性セット)の名前。

attr_name

追加する要素属性の名前。同じセット内の2つの属性に同じ名前を指定することはできません。

attr_type

属性のデータ型。この引数には、標準のSQLデータ型、または現行のユーザーがアクセス可能なオブジェクト・タイプの名前を指定できます。

tab_alias

属性の別名を設定するデータベース表を識別する型。

attr_defv1

要素属性のデフォルト値。


使用上の注意

次のコマンドでは、2つの要素属性が属性セットに追加されます。

BEGIN
  DBMS_RLMGR.ADD_ELEMENTARY_ATTRIBUTE (
                               event_struct  => 'HRAttrSet',
                               attr_name => 'HRREP',
                               attr_type => 'VARCHAR2(30)');
  DBMS_RLMGR.ADD_ELEMENTARY_ATTRIBUTE (
                               event_struct  => 'HRAttrSet',
                               attr_name => 'DEPT',
                               tab_alias => exf$table_alias('DEPT'));
END;

ADD_EVENTプロシージャ

このプロシージャは、アクティブなルール・セッションのルール・クラスにプリミティブ・イベントを追加します。このプロシージャはオーバーロードされています。複数の機能を構文形式ごとに、定義とともに示します。

構文

プリミティブ・イベント・インスタンスの文字列表現をルール・クラスに追加します。

DBMS_RLMGR.ADD_EVENT (
   rule_class      IN VARCHAR2,
   event_inst      IN VARCHAR2,
   event_type      IN VARCHAR2 default null);

プリミティブ・イベント・インスタンスのAnyData表現をルール・クラスに追加します。

DBMS_RLMGR.ADD_EVENT (
   rule_class      IN VARCHAR2,
   event_inst      IN sys.AnyData);

パラメータ

表88-3 ADD_EVENTプロシージャのパラメータ

パラメータ 説明

rule_class

ルール・クラスの名前。スキーマ拡張したルール・クラス名を使用すると、現行のスキーマに属していないルール・クラスを参照できます。

event_inst

ルール・クラスに追加するイベント・インスタンスの文字列表現またはAnyData表現。

event_type

event_inst引数に割り当てられたイベント・インスタンスのタイプ(コンポジット・イベント用に構成されたルール・クラスに対してイベント・インスタンスの文字列表現を使用する場合)。


使用上の注意

次のコマンドでは、2種類のプリミティブ・イベント(AddFlightおよびAddRentalCar)用に構成されているCompTravelPromoルール・クラスに2つのイベントが追加されます。

BEGIN
 DBMS_RLMGR.ADD_EVENT(rule_class => 'CompTravelPromo',
                     event_inst =>
                        AddFlight.getVarchar(987, 'Abcair', 'Boston',
                                         'Orlando', '01-APR-2003', '08-APR-2003'),
                     event_type => 'AddFlight');

DBMS_RLMGR.ADD_EVENT(rule_class => 'Scott.CompTravelPromo',
                     event_inst =>
                        AnyData.convertObject(
                                        AddRentalCar(987, 'Luxury', '03-APR-2003',
                                                     '08-APR-2003', NULL)));
END;

ADD_FUNCTIONSプロシージャ

このプロシージャは、ファンクションの集合を表すユーザー定義ファンクション、パッケージ、またはタイプをイベント構造(Expression Filterの属性セット)に追加します。

構文

DBMS_RLMGR.ADD_FUNCTIONS (
   event_struct   IN   VARCHAR2,
   funcs_name     IN   VARCHAR2);

パラメータ

表88-4 ADD_FUNCTIONSプロシージャのパラメータ

パラメータ 説明

event_struct

ファンクションを追加するイベント構造の名前。

funcs_name

(ファンクションの集合を表す)ファンクション、パッケージまたはタイプの名前またはそのシノニム。


使用上の注意

次のコマンドでは、2つのファンクションが属性セットに追加されます。

BEGIN
  DBMS_RLMGR.ADD_FUNCTIONS (attr_set   => 'Car4Sale',
                             funcs_name => 'HorsePower');
  DBMS_RLMGR.ADD_FUNCTIONS (attr_set   => 'Car4Sale',
                             funcs_name => 'Scott.CrashTestRating');
END;

ADD_RULEプロシージャ

このプロシージャは、ルール・クラスに新しいルールを追加します。

構文

DBMS_RLMGR.ADD_RULE (
   rule_class      IN  VARCHAR2,
   rule_id         IN  VARCHAR2,
   rule_cond       IN  VARCHAR2,
   actprf_nml      IN  VARCHAR2 DEFAULT NULL,
   actprf_vall     IN  VARCHAR2 DEFAULT NULL);

パラメータ

表88-5 ADD_RULEプロシージャのパラメータ

パラメータ 説明

rule_class

ルール・クラスの名前。スキーマ拡張したルール・クラス名を使用すると、現行のスキーマに属していないルール・クラスを参照できます。

rule_id

ルール・クラス内のルールの一意の識別子。

rule_cond

ルールの条件。条件では、ルール・クラスのイベント構造で定義された変数が使用されます。

actprf_nml

actprf_vall引数によって値が割り当てられるアクション・プリファレンス名のリスト。

actprf_vall

actprf_nml引数に割り当てられる名前リストに対するアクション・プリファレンス値のリスト。


使用上の注意

次のコマンドでは、ルール・クラスにルールが追加されます。

BEGIN
DBMS_RLMGR.ADD_RULE (
           rule_class => 'CompTravelPromo',
           rule_id => 'AB_AV_FL',
           rule_cond =>
             '<condition>
                 <and join="Flt.CustId = Car.CustId">
                    <object name="Flt">
                      Airline=''Abcair'' and ToCity=''Orlando''
                    </object>
                    <object name="Car">
                      CarType = ''Luxury''
                    </object>
                  </and>
               </condition>' ,
             actprf_nml => 'PromoType, OfferedBy',
             actprf_vall => '''RentalCar'', ''Acar''');
END;

適切な権限がある場合は、次のSQL INSERT文を使用してルールをルール・クラスに追加できます。

INSERT INTO CompTravelPromo (rlm$ruleid, rlm$rulecond, PromoType, OfferedBy)
  VALUES ('AB_AV_FL',
          '<condition>
             <and join="Flt.CustId = Car.CustId">
               <object name="Flt">
                   Airline=''Abcair'' and ToCity=''Orlando''
               </object>
               <object name="Car">
                   CarType = ''Luxury''
               </object>
             </and>
           </condition>',
          'RentalCar','Acar');

CONSUME_EVENTファンクション

このファンクションは、イベントをコンシュームし、対応するルールをアクションの実行用に準備します。これは、アクション(ルールの実行)がコールバックによってではなく、ユーザーのアプリケーションによって行われる場合にのみ必要です。

構文

DBMS_RLMGR.CONSUME_EVENT (
   rule_class       IN VARCHAR2,
   event_ident      IN VARCHAR2)
 RETURN NUMBER;

パラメータ

表88-6 CONSUME_EVENTファンクションのパラメータ

パラメータ 説明

rule_class

ルール・クラスの名前。スキーマ拡張したルール・クラス名を使用すると、現行のスキーマに属していないルール・クラスを参照できます。

event_ident

対応するルール・クラスの結果ビュー(RULEベースのコンシューム・ポリシー用に構成されるルール・クラスの場合はアクション・コールバック・プロシージャの引数)から取得されるイベント識別子。


戻り値

このファンクションは、次の値を戻します。

使用上の注意

次のコマンドでは、ルールの実行で使用されるイベントが識別され、その識別子を使用してイベントがコンシュームされます。

var eventid VARCHAR(40);
var evtcnsmd NUMBER;

BEGIN
  SELECT rlm$eventid INTO :eventid FROM MatchingPromos WHERE rownum < 2;

  -- carry the required action for a rule matched by the above event --
  :evtcnsmd := DBMS_RLMGR.CONSUME_EVENT(rule_class  => 'TravelPromotion',
                                        event_ident => :eventid);
END;

CONSUME_PRIM_EVENTSファンクション

このファンクションは、RULEベースのコンシューム・ポリシーで構成されたルール・クラスの場合、悉無律セマンティクスに基づいて一連のプリミティブ・イベントをコンシュームします。

構文

DBMS_RLMGR.CONSUME_PRIM_EVENTS (
   rule_class       IN VARCHAR2,
   event_idents     IN RLM$EVENTIDS)
 RETURN NUMBER;

パラメータ

表88-7 CONSUME_PRIM_EVENTSファンクションのパラメータ

パラメータ 説明

rule_class

ルール・クラスの名前。スキーマ拡張したルール・クラス名を使用すると、現行のスキーマに属していないルール・クラスを参照できます。

event_ident

対応するルール・クラスの結果ビューまたはアクション・コールバック・プロシージャの引数から取得されたイベント識別子。


戻り値

このファンクションは、次の値を戻します。

使用上の注意

ルール・クラスがRULEベースのコンシューム・ポリシー用に構成されている場合は、CONSUME_PRIM_EVENTSファンクションを使用して、コンポジット・イベントを構成する1つ以上のプリミティブ・イベントをコンシュームできます。この操作は、渡したすべてのイベントが有効で、コンシューム可能な場合にのみ正常に実行されます。ユーザーが開始するアクションは、CONSUME_PRIM_EVENTSコールの戻り値をチェックした後で実行する必要があります。

次のコマンドは、RULEコンシューム・ポリシー用に構成されたルール・クラスのアクション・コールバック・プロシージャの本体を示しています。ここでは、CONSUME_PRIM_EVENTSプロシージャを使用して、一致するルールに対するアクションを実行する前にイベントをコンシュームする方法を示します。

create or replace procedure PromoAction (
      Flt        AddFlight,
      Flt_EvtId  ROWID,    --- rowid for the flight primitive event
      Car        AddRentalCar,
      Car_EvtId  ROWID,
      rlm$rule   TravelPromotions%ROWTYPE) is
  evtcnsmd   NUMBER;
BEGIN
  evtcnsmd := DBMS_RLMGR.CONSUME_PRIM_EVENTS(
                    rule_class   => 'TravelPromotions',
                    event_idents => RLM$EVENTIDS(Flt_EvtId, Car_EvtId));

  if (evtcnsmd = 1) then
    -- consume operation was successful; perform the action ---
    OfferPromotion (Flt.CustId, rlm$rule.PromoType, rlm$rule.OfferedBy);
  end if;
END;

CREATE_EVENT_STRUCTUREプロシージャ

このプロシージャは、イベント構造を作成します。

構文

DBMS_RLMGR.CREATE_EVENT_STRUCTURE  (
   event_struct  IN  VARCHAR2);

パラメータ

表88-8 CREATE_EVENT_STRUCTUREプロシージャのパラメータ

パラメータ 説明

event_struct

現行のスキーマ内に作成するイベント構造の名前。


使用上の注意

このプロシージャは、現行のスキーマ内にダミーのイベント構造を作成します。このイベント構造には、ADD_ELEMENTARY_ATTRIBUTEプロシージャを使用して1つ以上の属性を追加できます。

次のコマンドでは、イベント構造が作成されます。

BEGIN
  DBMS_RLMGR.CREATE_EVENT_STRUCT(event_struct => 'AddFlight');
END;

CREATE_RULE_CLASSプロシージャ

このプロシージャは、ルール・クラスを作成します。

構文

DBMS_RLMGR.CREATE_RULE_CLASS  (
   rule_class      IN  VARCHAR2,
   event_struct    IN  VARCHAR2,
   action_cbk      IN  VARCHAR2,
   actprf_spec     IN  VARCHAR2  default null,
   rslt_viewnm     IN  VARCHAR2  default null,
   rlcls_prop      IN  VARCHAR2  default <simple/>);

パラメータ

表88-9 CREATE_RULE_CLASSプロシージャのパラメータ

パラメータ 説明

rule_class

現行のスキーマ内に作成するルール・クラスの名前。

event_struct

ルール・クラスのイベント構造を表す、現行のスキーマ内のオブジェクト・タイプまたはExpression Filterの属性セットの名前。

action_cbk

ルール・クラスに対して作成するアクション・コールバック・プロシージャの名前。

actprf_spec

ルール・クラスに関連付けられているアクション・プリファレンスの仕様(名前とSQLデータ型の組合せ)。

rlst_viewnm

セッション内の一致するイベントとルールが表示されるルール・クラスの結果ビューの名前。この名前のビューが現行のスキーマ内に作成されます。

rlcls_prop

ルール・クラスのプロパティを設定するためのXML文書。デフォルトでは、ルール・クラスは単純イベント(非コンポジット)用に作成されます。


使用上の注意

次のコマンドでは、単純イベント(AddFlightタイプ)用のルール・クラスが作成されます。

CREATE or REPLACE TYPE AddFlight AS OBJECT (
                  CustId NUMBER,
                  Airline VARCHAR(20),
                  FromCity VARCHAR(30),
                  ToCity VARCHAR(30),
                  Depart DATE,
                  Return DATE);
BEGIN
  DBMS_RLMGR.CREATE_RULE_CLASS (
              rule_class   => 'TravelPromotion', -- rule class name --
              event_struct => 'AddFlight', -- event struct name --
              action_cbk    => 'PromoAction', -- callback proc name –-
              rslt_viewnm   => 'MatchingPromos', -- results view --
              actprf_spec   => 'PromoType VARCHAR(20),
                              OfferedBy VARCHAR(20)');
END;

次のコマンドでは、2つのプリミティブ・イベント(AddFlightおよびAddRentalCar)で構成されるコンポジット・イベント用のルール・クラスが作成されます。

CREATE or REPLACE TYPE TSCompEvent (Flt AddFlight,
                                    Car AddRentalCar);
BEGIN
  DBMS_RLMGR.CREATE_RULE_CLASS (
              rule_class    => 'CompTravelPromo', -- rule class name --
              event_struct  => 'TSCompEvent', -- event struct name --
              action_cbk    => 'CompPromoAction', -- callback proc name –-
              rslt_viewnm   => 'MatchingCompPromos', -- results view --
              actprf_spec   => 'PromoType VARCHAR(20),
                              OfferedBy VARCHAR(20)',
              properties    => '<composite/>');
END;

DELETE_RULEプロシージャ

このプロシージャは、ルール・クラスからルールを削除します。

構文

DBMS_RLMGR.DELETE_RULE (
   rule_class    IN    VARCHAR2,
   rule_id       IN    VARCHAR2);

パラメータ

表88-10 DELETE_RULEプロシージャのパラメータ

パラメータ 説明

rule_class

ルール・クラスの名前。スキーマ拡張したルール・クラス名を使用すると、現行のスキーマに属していないルール・クラスを参照できます。

rule_id

削除するルールの識別子。


使用上の注意

このコマンドでは、ルール・クラスからルールが削除されます。

BEGIN
  DBMS_RLMGR.DELETE_RULE (
           rule_class  => 'CompTravelPromo',
           rule_id     => 'AB_AV_FL');
END;

また、前述のルールは、次のSQL DELETE文を発行してルール・クラスから削除することもできます。

DELETE FROM CompTravelPromo WHERE rlm$ruleid = 'AB_AV_FL';

DROP_EVENT_STRUCTUREプロシージャ

このプロシージャは、イベント構造を削除します。

構文

DBMS_RLMGR.DROP_EVENT_STRUCTURE  (
   event_struct  IN  VARCHAR2);

パラメータ

表88-11 DROP_EVENT_ STRUCTUREプロシージャのパラメータ

パラメータ 説明

event_struct

現行のスキーマ内のイベント構造の名前。


使用上の注意

このプロパティは、現行のスキーマ内のイベント構造を削除します。これによって、イベント構造を管理するために作成されたすべての依存オブジェクトが削除されます。

次のコマンドでは、イベント構造が削除されます。

BEGIN
  DBMS_RLMGR.DROP_EVENT_STRUCT(event_struct => 'AddFlight');
END;

DROP_RULE_CLASSプロシージャ

このプロシージャは、ルール・クラスを削除します。

構文

DBMS_RLMGR.DROP_RULE_CLASS  (
   rule_class  IN  VARCHAR2);

パラメータ

表88-12 DROP_RULE_CLASSプロシージャのパラメータ

パラメータ 説明

rule_class

現行のスキーマ内のルール・クラスの名前。


使用上の注意

このプロパティは、現行のスキーマ内のルール・クラスを削除します。これによって、ルール・クラスを管理するために作成されたすべての依存オブジェクトが削除されます。ユーザーのスキーマ内のイベント構造は複数のルール・クラスで共有できるため、イベント構造はこのコマンドでは削除されません。コンポジット・イベントおよび個々のプリミティブ・イベントの場合、使用されていないイベント構造を削除するには、DROP_EVENT_STRUCTURE APIを使用する必要があります。

次のコマンドでは、ルール・クラスが削除されます。

BEGIN
  DBMS_RLMGR.DROP_RULE_CLASS(rule_class => 'CompTravelPromo');
END;

GRANT_PRIVILEGEプロシージャ

このプロシージャは、ルール・クラスに対する権限を他のユーザーに付与します。

構文

DBMS_RLMGR.GRANT_PRIVILEGE  (
   rule_class      IN  VARCHAR2,
   priv_type       IN  VARCHAR2,
   to_user         IN  VARCHAR2);

パラメータ

表88-13 GRANT_PRIVILEGEプロシージャのパラメータ

パラメータ 説明

rule_class

現行のスキーマ内のルール・クラスの名前。

priv_type

付与するルール・クラス権限のタイプ。

to_user

権限を付与されるユーザー。


使用上の注意

次のコマンドでは、ルール・クラスTravelPromoのPROCESS RULES権限がユーザーSCOTTに付与されます。

BEGIN
  DBMS_RLMGR.GRANT_PRIVILEGE(rule_class => 'TravelPromo',
                             priv_type => 'PROCESS RULES',
                             to_user => 'SCOTT');
END;

PROCESS_RULESプロシージャ

このプロシージャは、指定したイベントのルールを処理します。このプロシージャはオーバーロードされています。複数の機能を構文形式ごとに、定義とともに示します。

構文

ルール・クラスに追加するイベント・インスタンスの文字列表現に対するルールを処理します。

DBMS_RLMGR.PROCESS_RULES  (
   rule_class    IN  VARCHAR2,
   event_inst    IN  VARCHAR2,
   event_type    IN  VARCHAR2 default null);

ルール・クラスに追加するイベント・インスタンスのAnyData表現に対するルールを処理します。

DBMS_RLMGR.PROCESS_RULES  (
   rule_class    IN  VARCHAR2,
   event_inst    IN  sys.AnyData);

パラメータ

表88-14 PROCESS_RULESプロシージャのパラメータ

パラメータ 説明

rule_class

ルール・クラスの名前。スキーマ拡張したルール・クラス名を使用すると、現行のスキーマに属していないルール・クラスを参照できます。

event_inst

ルール・クラスに追加するイベント・インスタンスの文字列表現またはAnyData表現。

event_type

event_inst引数に割り当てられたイベント・インスタンスのタイプ(コンポジット・イベント用に構成されたルール・クラスに対してイベント・インスタンスの文字列表現を使用する場合)。


使用上の注意

次のコマンドでは、指定したイベントのルール・クラスTravelPromotionのルールが処理されます。

BEGIN
  DBMS_RLMGR.PROCESS_RULES (
               rule_class => 'TravelPromotion',
               event_inst =>
                 AddFlight.getVarchar(987, 'Abcair', 'Boston', 'Orlando',
                                      '01-APR-2003', '08-APR-2003'));
END;

次のコマンドでは、示されている2つのプリミティブ・イベントのルール・クラスCompTravelPromoのルールが処理されます。

BEGIN  DBMS_RLMGR.PROCESS_RULES(
               rule_class => 'CompTravelPromo',
               event_inst =>
                 AddFlight.getVarchar(987, 'Abcair', 'Boston', 'Orlando',
                                      '01-APR-2003', '08-APR-2003'),
               event_type => 'AddFlight');
  DBMS_RLMGR.PROCESS_RULES(
               rule_class => 'Scott.CompTravelPromo',
               event_inst =>
                  AnyData.convertObject(AddRentalCar(987, 'Luxury', '03-APR-2003',
                                        '08-APR-2003', NULL)));
END;

RESET_SESSIONプロシージャ

このプロシージャは、新しいセッションを開始し、ルール・クラスの結果ビュー内の結果を破棄します。

構文

DBMS_RLMGR.RESET_SESSION  (
   rule_class  IN  VARCHAR2);

パラメータ

表88-15 RESET_SESSIONプロシージャのパラメータ

パラメータ 説明

rule_class

ルール・クラスの名前。スキーマ拡張したルール・クラス名を使用すると、現行のスキーマに属していないルール・クラスを参照できます。


使用上の注意

次のコマンドでは、ルール・クラス・セッションがリセットされます。

BEGIN  DBMS_RLMGR.RESET_SESSION(
             rule_class => 'CompTravelPromo');
END;

REVOKE_PRIVILEGEプロシージャ

このプロシージャは、他のユーザーが持つルール・クラスに対する権限を取り消します。

構文

DBMS_RLMGR.REVOKE_PRIVILEGE  (
   rule_class      IN  VARCHAR2,
   priv_type       IN  VARCHAR2,
   from_user       IN  VARCHAR2);

パラメータ

表88-16 REVOKE_PRIVILEGEプロシージャのパラメータ

パラメータ 説明

rule_class

現行のスキーマ内のルール・クラスの名前。

priv_type

取り消すルール・クラス権限のタイプ。

from_user

権限を取り消されるユーザー。


使用上の注意

このプロシージャは、ユーザーに付与されている権限を取り消します。取り消すことができる権限のタイプは、「GRANT_PRIVILEGEプロシージャ」に示されている権限のタイプと同じです。ルール・クラスの所有者が持つルール・クラスに対する権限は取り消すことができません。

次のコマンドでは、ルール・クラスTravelPromoに対するPROCESS RULES権限がユーザーSCOTTから取り消されます。

BEGIN
  DBMS_RLMGR.REVOKE_PRIVILEGE(rule_class  => 'TravelPromo',
                              priv_type   => 'PROCESS RULES',
                              from_user   => 'SCOTT');
END;