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

戻る
戻る
 
次へ
次へ
 

53 DBMS_EXPFIL

DBMS_EXPFILパッケージには、属性セット、式セット、式の索引、オプティマイザ統計および権限を式フィルタで管理する場合に使用するすべてのプロシージャが含まれています。


関連項目:

詳細は、『Oracle Databaseルール・マネージャおよび式フィルタ開発者ガイド』を参照してください。

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


式フィルタのサブプログラムの要約

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

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

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

サブプログラム 説明

ADD_ELEMENTARY_ATTRIBUTEプロシージャ


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

ADD_FUNCTIONSプロシージャ


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

ASSIGN_ATTRIBUTE_SETプロシージャ


式が格納されている列に属性セットを割り当てます。

BUILD_EXCEPTIONS_TABLEプロシージャ


無効な式への参照を保持する例外表を作成します。

CLEAR_EXPRSET_STATSプロシージャ


式セットの述語統計を消去します。

COPY_ATTRIBUTE_SETプロシージャ


属性セットをコピーします。

CREATE_ATTRIBUTE_SETプロシージャ


属性セットを作成します。

DEFAULT_INDEX_PARAMETERSプロシージャ


属性セットにデフォルトの索引パラメータを割り当てます。

DEFAULT_XPINDEX_PARAMETERSプロシージャ


属性セットにデフォルトのXPath索引パラメータを割り当てます。

DEFRAG_INDEXプロシージャ


ビットマップ索引をオンラインで再作成して、断片化を減らします。

DROP_ATTRIBUTE_SETプロシージャ


未使用の属性セットを削除します。

GET_EXPRSET_STATSプロシージャ


式セットの述語統計を収集します。

GRANT_PRIVILEGEプロシージャ


ユーザーに式のDML権限を付与します。

INDEX_PARAMETERSプロシージャ


式セットに索引パラメータを割り当てます。

MODIFY_OPERATOR_LISTプロシージャ


特定の属性を持つ述語で使用される共通演算子のリストを変更します。

REVOKE_PRIVILEGEプロシージャ


ユーザーに付与されている式のDML権限を取り消します。

SYNC_TEXT_INDEXESプロシージャ


格納されている式のCONTAINS演算子に関連する述語を処理するために定義された索引を同期化します。

UNASSIGN_ATTRIBUTE_SETプロシージャ


式が格納されている列と属性セットとの関連付けを解除します。

VALIDATE_EXPRESSIONSプロシージャ


式のメタデータおよび列に格納されている式を検証します。

XPINDEX_PARAMETERSプロシージャ


式セットにXPath索引パラメータを割り当てます。



ADD_ELEMENTARY_ATTRIBUTEプロシージャ

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

構文

指定の要素属性を属性セットに追加する場合:

DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE (
   attr_set   IN   VARCHAR2,
   attr_name  IN   VARCHAR2,
   attr_type  IN   VARCHAR2,
   attr_defv1 IN   VARCHAR2 DEFAULT NULL);

表の別名である要素属性を識別して、属性セットに追加する場合:

DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE (
   attr_set   IN   VARCHAR2,
   attr_name  IN   VARCHAR2,
   tab_alias  IN   exf$table_alias);

属性セットへのテキスト属性の追加を許可する場合:

DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE (
   attr_set       IN   VARCHAR2,
   attr_name      IN   VARCHAR2,
   attr_type      IN   VARCHAR2,
   text_pref      IN   EXF$TEXT);

パラメータ

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

パラメータ 説明

attr_set

この属性を追加する属性セットの名前。

attr_name

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

attr_type

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

attr_defv1

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

tab_alias

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

text_pref

LEXER、WORDLIST指定などのテキスト・プリファレンス。


使用上の注意

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

BEGIN
  DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE (
                               attr_set   => 'HRAttrSet',
                               attr_name  => 'HRREP',
                               attr_type  => 'VARCHAR2(30)'
                               attr_defv1 => 'Betty Smith');
  DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE (
                               attr_set  => 'HRAttrSet',
                               attr_name => 'DEPT',
                               tab_alias => exf$table_alias('DEPT'));
END;
/

次のコマンドでは、データベース時間をデフォルト値とする要素属性CreationTimeが定義されます。

BEGIN
  DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE (
                          attr_set   => 'PurchaseOrder',
                          attr_name  => 'CreationTime',
                          attr_type  => 'DATE',
                          attr_defvl => 'SYSDATE');
END;
/

また、次のコマンドを使用すると、CreationTime属性は特定の値に初期化されます(EVALUATE演算子に渡されるデータ・アイテムで値が明示的に指定されていない場合)。

BEGIN
  DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE (
                          attr_set   => 'PurchaseOrder',
                          attr_name  => 'CreationTime',
                          attr_type  => 'DATE',
                          attr_defvl => 'to_date(''01-01-2004'',''DD-MM-YYYY'')');
END;
/

次のコマンドでは、VARCHAR2データ型のModel属性およびテキスト述語用に構成されたInsReport属性を含む属性セットが作成されます。

BEGIN
   DBMS_EXPFIL.CREATE_EVENT_STRUT(event_struct => 'Car4Sale');
   // create scalar attributes
   DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE(
                       attr_set  => 'Car4Sale',
                       attr_name => 'Model',
                       attr_type => 'VARCHAR2(30)');

   //create text attribute
   DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE(
                       attr_set  => 'Car4Sale',
                       attr_name => 'InsReport',
                       attr_type => 'CLOB',
                       attr_type => exf$text(
                                    'LEXER insrpt_lexer
                                     WORDLIST insrpt_wordlist'));
END;
/

ADD_FUNCTIONSプロシージャ

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

構文

DBMS_EXPFIL.ADD_FUNCTIONS (
   attr_set   IN   VARCHAR2,
   funcs_name IN   VARCHAR2);

パラメータ

表53-3 ADD_FUNCTIONSプロシージャのパラメータ

パラメータ 説明

attr_set

ファンクションを追加する属性セットの名前。

funcs_name

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


使用上の注意

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

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

ASSIGN_ATTRIBUTE_SETプロシージャ

このプロシージャは、ユーザー表のVARCHAR2列に属性セットを割り当ててExpression列を作成します。

構文

DBMS_EXPFIL.ASSIGN_ATTRIBUTE_SET (
   attr_set   IN   VARCHAR2,
   expr_tab   IN   VARCHAR2,
   expr_col   IN   VARCHAR2,
   force      IN   VARCHAR2 DEFAULT 'FALSE');

パラメータ

表53-4 ASSIGN_ATTRIBUTE_SETプロシージャのパラメータ

パラメータ 説明

attr_set

属性セットの名前。

expr_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。

force

表の既存の式を信頼(および検証をスキップ)するために使用する引数。


使用上の注意

次のコマンドでは、式が格納されている列に属性セットが割り当てられます。式セットは、関連付け時に、空である必要があります。

BEGIN
  DBMS_EXPFIL.ASSIGN_ATTRIBUTE_SET (attr_set => 'Car4Sale',
                                    expr_tab => 'Consumer',
                                    expr_col => 'Interest');
END;
/

BUILD_EXCEPTIONS_TABLEプロシージャ

このプロシージャは、検証に使用される例外表を現行のスキーマ内に作成します。

構文

DBMS_EXPFIL.BUILD_EXCEPTIONS_TABLE (
   exception_tab IN VARCHAR2);

パラメータ

表53-5 BUILD_EXCEPTIONS_TABLEプロシージャのパラメータ

パラメータ 説明

exception_tab

例外表の名前。


使用上の注意

次のコマンドでは、現行のスキーマ内に例外表InterestExceptionsが作成されます。

BEGIN
  DBMS_EXPFIL.BUILD_EXCEPTIONS_TABLE (
                              exception_tab => 'InterestExceptions');
END;
/

CLEAR_EXPRSET_STATSプロシージャ

このプロシージャは、表の列に格納されている式セットの述語統計を消去します。

構文

DBMS_EXPFIL.CLEAR_EXPRSET_STATS (
   expr_tab   IN   VARCHAR2,
   expr_col   IN   VARCHAR2);

パラメータ

表53-6 CLEAR_EXPRSET_STATSプロシージャのパラメータ

パラメータ 説明

expr_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。


使用上の注意

次のコマンドでは、Consumer表のInterest列に格納されている式セットの述語統計が消去されます。

BEGIN
  DBMS_EXPFIL.CLEAR_EXPRSET_STATS (expr_tab => 'Consumer',
                                    expr_col => 'Interest');
END;
/

COPY_ATTRIBUTE_SETプロシージャ

このプロシージャは、属性セットを、そのユーザー定義ファンクション・リストとデフォルトの索引パラメータとともに別のセットにコピーします。

構文

DBMS_EXPFIL.COPY_ATTRIBUTE_SET (
   from_set   IN   VARCHAR2,
   to_set     IN   VARCHAR2);

パラメータ

表53-7 COPY_ATTRIBUTE_SETプロシージャのパラメータ

パラメータ 説明

from_set

コピー元となる既存の属性セットの名前。

to_set

新しい属性セットの名前。


使用上の注意

次のコマンドでは、属性セットCar4Saleがコピーされます。

BEGIN
  DBMS_EXPFIL.COPY_ATTRIBUTE_SET (from_set => 'Car4Sale',
                                  to_set   => 'Vehicle');
END;
/

CREATE_ATTRIBUTE_SETプロシージャ

このプロシージャは、空の属性セットを作成するか、または一致する名前のオブジェクト・タイプから導出される要素属性の完全なセットを含む属性セットを作成します。

構文

DBMS_EXPFIL.CREATE_ATTRIBUTE_SET (
   attr_set   IN   VARCHAR2,
   from_type  IN   VARCHAR2 DEFAULT 'NO');

パラメータ

表53-8 CREATE_ATTRIBUTE_SETプロシージャのパラメータ

パラメータ 説明

attr_set

作成する属性セットの名前。

from_type

属性セットの属性を既存のオブジェクト・タイプから導出する必要がある場合はYES


使用上の注意

次のコマンドでは、Car4Saleタイプから導出された必須の要素属性をすべて含む属性セットが作成されます。

CREATE OR REPLACE TYPE Car4Sale AS OBJECT
                                   (Model   VARCHAR2(20),
                                    Year    NUMBER,
                                    Price   NUMBER,
                                    Mileage NUMBER);
/

BEGIN
  DBMS_EXPFIL.CREATE_ATTRIBUTE_SET(attr_set  => 'Car4Sale',
                                   from_type => 'YES');
END;
/

Car4Saleタイプが存在しない場合は、次の例に示すように、属性セットを最初から作成できます。

BEGIN
  DBMS_EXPFIL.CREATE_ATTRIBUTE_SET(attr_set => 'Car4Sale');
  DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE(
                               attr_set  => 'Car4Sale',
                               attr_name => 'Model',
                               attr_type => 'VARCHAR2(20)');
  DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE(
                               attr_set  => 'Car4Sale',
                               attr_name => 'Year',
                               attr_type => 'NUMBER');
  DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE(
                               attr_set  => 'Car4Sale',
                               attr_name => 'Price',
                               attr_type => 'NUMBER');
  DBMS_EXPFIL.ADD_ELEMENTARY_ATTRIBUTE(
                               attr_set  => 'Car4Sale',
                               attr_name => 'Mileage',
                               attr_type => 'NUMBER');
END;
/

DEFAULT_INDEX_PARAMETERSプロシージャ

このプロシージャは、属性セットにデフォルトの索引パラメータを割り当てます。また、属性リストに関連付けられているデフォルトのリストに対して、ストアド属性または索引付き属性の部分的なリストを追加または削除します。

構文

DBMS_EXPFIL.DEFAULT_INDEX_PARAMETERS (
   attr_set   IN   VARCHAR2,
   attr_list  IN   EXF$ATTRIBUTE_LIST,
   operation  IN   VARCHAR2 DEFAULT 'ADD');

パラメータ

表53-9 DEFAULT_INDEX_PARAMETERSプロシージャのパラメータ

パラメータ 説明

attr_set

属性セットの名前。

attr_list

式フィルタの索引の(デフォルトの)ストアド属性および索引付き属性の部分的なリストを含むEXF$ATTRIBUTE_LISTのインスタンス。

operation

索引パラメータのリストに対して実行する操作。デフォルト値はADDです。有効な値はADDおよびDROPです。


使用上の注意

次のコマンドでは、指定したストアド属性および索引付き属性が属性セットのデフォルトの索引パラメータ・リストに追加されます。

BEGIN
 DBMS_EXPFIL.DEFAULT_INDEX_PARAMETERs(
    attr_set  => 'Car4Sale',
    attr_list => exf$attribute_list (
       exf$attribute (attr_name => 'Model',
                      attr_oper => exf$indexoper('='),
                      attr_indexed => 'TRUE'),
       exf$attribute (attr_name => 'Price',
                      attr_oper => exf$indexoper('all'),
                      attr_indexed => 'TRUE'),
       exf$attribute (attr_name => 'HorsePower(Model, Year)',
                      attr_oper => exf$indexoper('=','<','>','>=','<='),
                      attr_indexed => 'FALSE'),
       exf$attribute (attr_name => 'CrashTestRating(Model, Year)',
                      attr_oper => exf$indexoper('=','<','>','>=','<='),
                      attr_indexed => 'FALSE')),
    operation => 'ADD');
END;
/

次のコマンドでは、前述のリストからCrashTestRating(Model, Year)属性(ストアドまたは索引付き)が削除されます。

BEGIN
  DBMS_EXPFIL.DEFAULT_INDEX_PARAMETERS(
      attr_set  => 'Car4Sale',
      attr_list => exf$attribute_list (
         exf$attribute (attr_name => 'CrashTestRating(Model, Year)')),
      operation => 'DROP');
END;
/

DEFAULT_XPINDEX_PARAMETERSプロシージャ

このプロシージャは、属性セットに関連付けられているデフォルトの索引パラメータにXPathパラメータの部分的なリストを追加(または削除)します。

構文

DBMS_EXPFIL.DEFAULT_XPINDEX_PARAMETERS (
   attr_set   IN   VARCHAR2,
   xmlt_attr  IN   VARCHAR2,
   xptag_list IN   EXF$XPATH_TAGS,
   operation  IN   VARCHAR2 DEFAULT 'ADD');

パラメータ

表53-10 DEFAULT_XPINDEX_PARAMETERSプロシージャのパラメータ

パラメータ 説明

attr_set

属性セットの名前。

xmlt_attr

XMLTypeデータ型の属性の名前。

xptag_list

式フィルタの索引用に構成するXML要素と属性の部分的なリストを含むEXF$XPATH_TAGSタイプのインスタンス。

operation

索引パラメータのリストに対して実行する操作。デフォルト値はADDです。有効な値はADDおよびDROPです。


使用上の注意


注意:

exf$xpath_tagタイプのtag_name引数に割り当てる値では、大/小文字が区別されます。

次のコマンドでは、指定したXMLタグが、位置フィルタ、値フィルタ、索引付き述語グループ、ストアド述語グループなどのプリファレンスとともに、デフォルトの索引パラメータ・リストに追加されます。

BEGIN
  DBMS_EXPFIL.DEFAULT_XPINDEX_PARAMETERS(
       attr_set   => 'Car4Sale',
       xmlt_attr  => 'Details',
       xptag_list =>                                    --- XPath tag list
         exf$xpath_tags(
           exf$xpath_tag(tag_name    => 'stereo@make',  --- XML attribute
                         tag_indexed => 'TRUE',
                         tag_type    => 'VARCHAR(15)'), --- value filter
           exf$xpath_tag(tag_name    => 'stereo',       --- XML element
                         tag_indexed => 'FALSE',
                         tag_type    => null),          --- positional filter
           exf$xpath_tag(tag_name    => 'memory',       --- XML element
                         tag_indexed => 'TRUE',
                         tag_type    => 'VARCHAR(10)'), --- value filter
           exf$xpath_tag(tag_name    => 'GPS',
                         tag_indexed => 'TRUE',
                         tag_type    => null)
          )
        );
END;
/

次のコマンドでは、デフォルトの索引パラメータからstereo@makeタグが削除されます。

BEGIN
  DBMS_EXPFIL.DEFAULT_XPINDEX_PARAMETERS(
       attr_set   => 'Car4Sale',
       xmlt_attr  => 'Details',
       xptag_list =>                                    --- XPath tag list
         exf$xpath_tags(
           exf$xpath_tag(tag_name    => 'stereo@make')
         ),
       operation => 'DROP'
       );
END;
/

DEFRAG_INDEXプロシージャ

このプロシージャは、ビットマップ索引をオンラインで再作成して断片化を減らします。

構文

DBMS_EXPFIL.DEFRAG_INDEX (
   idx_name   IN  VARCHAR2);

パラメータ

表53-11 DEFRAG_INDEXプロシージャのパラメータ

パラメータ 説明

idx_name

式フィルタの索引の名前。


使用上の注意

次のコマンドを発行すると、式フィルタの索引に関連づけられているビットマップ索引の断片化が解消されます。

BEGIN
  DBMS_EXPFIL.DEFRAG_INDEX (idx_name => 'InterestIndex');
END;
/


DROP_ATTRIBUTE_SETプロシージャ

このプロシージャは、いずれの式セットでも使用されていない属性セットを削除します。

構文

DBMS_EXPFIL.DROP_ATTRIBUTE_SET (
   attr_set   IN   VARCHAR2);

パラメータ

表53-12 DROP_ATTRIBUTE_SETプロシージャのパラメータ

パラメータ 説明

attr_set

削除する属性セットの名前。


使用上の注意

属性セットがExpression列で使用されていない場合、次のコマンドではその属性セットが削除されます。

BEGIN
  DBMS_EXPFIL.DROP_ATTRIBUTE_SET(attr_set => 'Car4Sale');
END;
/

GET_EXPRSET_STATSプロシージャ

このプロシージャは、式セットの述語統計を計算して式フィルタ・ディクショナリに格納します。

構文

DBMS_EXPFIL.GET_EXPRSET_STATS (
   expr_tab   IN   VARCHAR2,
   expr_col   IN   VARCHAR2);

パラメータ

表53-13 GET_EXPRSET_STATSプロシージャのパラメータ

パラメータ 説明

expr_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。


使用上の注意

次のコマンドでは、Consumer表のInterest列に格納されている式の述語統計が計算されます。

BEGIN
  DBMS_EXPFIL.GET_EXPRSET_STATS (expr_tab => 'Consumer',
                                 expr_col => 'Interest');
END;
/

GRANT_PRIVILEGEプロシージャ

このプロシージャは、1つ以上のExpression列に対する権限を他のユーザーに付与します。

構文

DBMS_EXPFIL.GRANT_PRIVILEGE (
   expr_tab   IN  VARCHAR2,
   expr_col   IN  VARCHAR2,
   priv_type  IN  VARCHAR2,
   to_user    IN  VARCHAR2);

パラメータ

表53-14 GRANT_PRIVILEGEプロシージャのパラメータ

パラメータ 説明

expr_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。

priv_type

付与する権限のタイプ。有効な値は、INSERT EXPRESSION、UPDATE EXPRESSIONおよびALLです。

to_user

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


使用上の注意

Consumer表の所有者は、次のコマンドを使用して、ユーザーSCOTTINSERT EXPRESSION権限を付与できます。ユーザーSCOTTが新しい式を式セットに追加できるようになるには、表に対するINSERT権限も必要です。

BEGIN
  DBMS_EXPFIL.GRANT_PRIVILEGE (expr_tab  => 'Consumer',
                               expr_col  => 'Interest',
                               priv_type => 'INSERT EXPRESSION',
                               to_user   => 'SCOTT');
END;

INDEX_PARAMETERSプロシージャ

このプロシージャは、索引の作成前に各式セットの索引パラメータを詳細にチューニングします。

構文

DBMS_EXPFIL.INDEX_PARAMETERS (
   expr_tab   IN   VARCHAR2,
   expr_col   IN   VARCHAR2,
   attr_list  IN   EXF$ATTRIBUTE_LIST,
   operation  IN   VARCHAR2 DEFAULT 'ADD');

パラメータ

表53-15 INDEX_PARAMETERSプロシージャのパラメータ

パラメータ 説明

expr_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。

attr_list

ストアド属性と索引付き属性の部分的なリストを含むEXF$ATTRIBUTE_LISTのインスタンス。

operation

索引パラメータのリストに対して実行する操作。デフォルト値はADDです。有効な値はADDおよびDROPです。


使用上の注意

次のコマンドでは、式セットの索引パラメータが、対応する属性セットに関連付けられているデフォルト値と同期されます。

BEGIN
  DBMS_EXPFIL.INDEX_PARAMETERS(expr_tab  => 'Consumer',
                               expr_col  => 'Interest',
                               attr_list => null,
                               operation => 'DEFAULT');
END;
/

次のコマンドでは、式セットの索引パラメータにストアド属性が追加されます。

BEGIN
  DBMS_EXPFIL.INDEX_PARAMETERS(expr_tab  => 'Consumer',
                               expr_col  => 'Interest',
                               attr_list =>
                                exf$attribute_list (
                                 exf$attribute (
                                   attr_name => 'CrashTestRating(Model, Year)',
                                   attr_oper => exf$indexoper('all'),
                                   attr_indexed => 'FALSE')),
                               operation => 'ADD');
END;
/

次のコマンドでは、式セットに関連付けられている索引パラメータが消去されます。

BEGIN
  DBMS_EXPFIL.INDEX_PARAMETERS(expr_tab  => 'Consumer',
                               expr_col  => 'Interest',
                               attr_list => null,
                               operation => 'CLEAR');
END;
/

以降の索引作成では、対応する属性セットに割り当てられているデフォルトの索引パラメータが使用されます。


MODIFY_OPERATOR_LISTプロシージャ

このプロシージャは、属性セットの特定の属性に関連付けられている共通演算子のリストを変更します。

構文

DBMS_EXPFIL.MODIFY_OPERATOR_LIST (
   attr_set   IN   VARCHAR2,
   attr_name  IN   VARCHAR2,
   attr_oper  IN   EXF$INDEXOPER);

パラメータ

表53-16 MODIFY_OPERATOR_LISTプロシージャのパラメータ

パラメータ 説明

attr_set

属性セットの名前。

attr_name

変更するストアド属性または索引付き属性の名前。

attr_oper

その属性を持つ述語で頻繁に使用される演算子の新しいリスト。


使用上の注意

次のコマンドでは、属性セットCar4Saleに定義されているHorsePower(Model,Year)属性に関連付けられている演算子リストが変更されます。

BEGIN
  DBMS_EXPFIL.MODIFY_OPERATOR_LIST (
    attr_set => 'Car4Sale',
    attr_name => 'HorsePower(Model, Year)',
    attr_oper => exf$indexoper('=','<','>', 'between'));
END;
/

REVOKE_PRIVILEGEプロシージャ

このプロシージャは、所有者が以前に付与した式の権限を取り消します。

構文

DBMS_EXPFIL.REVOKE_PRIVILEGE (
   expr_tab   IN  VARCHAR2,
   expr_col   IN  VARCHAR2,
   priv_type  IN  VARCHAR2,
   from_user  IN  VARCHAR2);

パラメータ

表53-17 REVOKE_PRIVILEGEプロシージャのパラメータ

パラメータ 説明

expr_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。

priv_type

取り消す権限のタイプ。

from_user

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


使用上の注意

次のコマンドでは、ユーザーSCOTTに付与されているConsumer表のInterest列に対するINSERT EXPRESSION権限が取り消されます。

BEGIN
  DBMS_EXPFIL.REVOKE_PRIVILEGE (expr_tab  => 'Consumer',
                                expr_col  => 'Interest',
                                priv_type => 'INSERT EXPRESSION',
                                 from_user => 'SCOTT');
END;/

SYNC_TEXT_INDEXESプロシージャ

このプロシージャは、格納されている式のCONTAINS演算子に関連する述語を処理するために定義された索引を同期化します。

構文

DBMS_EXPFIL.SYNC_TEXT_INDEXES (
     expr_tab   IN   VARCHAR2);

パラメータ

表53-18 SYNC_TEXT_INDEXESプロシージャのパラメータ

パラメータ 説明

expr_tab

テキスト述語を含むExpression列が含まれている表の名前。


使用上の注意

次のコマンドでは、CONSUMER表のExpression列に関連付けられているテキスト索引が同期化されます。

BEGIN
  DBMS_EXPFIL.SYNC_TEXT_INDEXES (expr_tab => 'Consumer');
END;
/

UNASSIGN_ATTRIBUTE_SETプロシージャ

このプロシージャは、式が格納されている列に対する属性セットの割当てを解除します。

構文

DBMS_EXPFIL.UNASSIGN_ATTRIBUTE_SET (
   expr_tab   IN   VARCHAR2,
   expr_col   IN   VARCHAR2);

パラメータ

表53-19 UNASSIGN_ATTRIBUTE_SETプロシージャのパラメータ

パラメータ 説明

expr_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。


使用上の注意

次のコマンドでは、Consumer表のInterest列に対して以前に割り当てられた属性セットの割当てが解除されます (詳細は、『Oracle Databaseルール・マネージャおよび式フィルタ開発者ガイド』の式データのバルク・ロードに関する項を参照)。

BEGIN
  DBMS_EXPFIL.UNASSIGN_ATTRIBUTE_SET (expr_tab => 'Consumer',
                                      expr_col => 'Interest');
END;
/

VALIDATE_EXPRESSIONSプロシージャ

このプロシージャは、セット内のすべての式の妥当性を検証します。

構文

DBMS_EXPFIL.VALIDATE_EXPRESSIONS (
   expr_tab      IN  VARCHAR2,
   expr_col      IN  VARCHAR2,
   exception_tab IN  VARCHAR2 DEFAULT NULL);

パラメータ

表53-20 VALIDATE_EXPRESSIONSプロシージャのパラメータ

パラメータ 説明

expr_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。

exception_tab

例外表の名前。 この表は、BUILD_EXCEPTIONS_TABLEプロシージャを使用して作成されます。


使用上の注意

次のコマンドでは、Consumer表のInterest列に格納されている式が検証されます。

BEGIN
  DBMS_EXPFIL.VALIDATE_EXPRESSIONS (expr_tab => 'Consumer',
                                    expr_col => 'Interest');
END;
/

XPINDEX_PARAMETERSプロシージャ

このプロシージャは、INDEX_PARAMETERSプロシージャと組み合せて使用します。それによって、各式セットのXPath固有の索引パラメータを詳細にチューニングします。

構文

DBMS_EXPFIL.XPINDEX_PARAMETERS (
   expr_tab   IN   VARCHAR2,
   expr_col   IN   VARCHAR2,
   xmlt_attr  IN   VARCHAR2,
   xptag_list IN   EXF$XPATH_TAGS,
   operation  IN   VARCHAR2 DEFAULT 'ADD');

パラメータ

表53-21 XPINDEX_PARAMETERSプロシージャのパラメータ

パラメータ 説明

exp_tab

式セットが格納されている表の名前。

expr_col

式が格納されている表の列の名前。

xmlt_attr

XMLTypeデータ型の属性の名前。

xptag_list

XML要素および属性の部分的なリストを含むEXF$XPATH_TAGSタイプのインスタンス。

operation

索引パラメータのリストに対して実行する操作。デフォルト値はADDです。有効な値はADDおよびDROPです。


使用上の注意

次のコマンドでは、式セットの索引パラメータ(XPathおよびXPath以外)が、対応する属性セットに関連付けられているデフォルト値と同期されます。

BEGIN
  DBMS_EXPFIL.INDEX_PARAMETERS(expr_tab  => 'Consumer',
                               expr_col  => 'Interest',
                               attr_list => null,
                               operation => 'DEFAULT');
END;
/

次のコマンドでは、XPath固有の索引パラメータが式セットに追加されます。

BEGIN
  DBMS_EXPFIL.XPINDEX_PARAMETERS(expr_tab   => 'Consumer',
                                 expr_col   => 'Interest',
                                 xmlt_attr  => 'Details',
                                 xptag_list =>
                                  exf$xpath_tags(
                                   exf$xpath_tag(tag_name    => 'GPS',
                                                 tag_indexed => 'TRUE',
                                                 tag_type    => NULL)),
                                 operation  => 'ADD');
END;
/