15.34 SEM_APIS.CREATE_INDEX_ON_SPM_TAB

形式

SEM_APIS.create_index_on_spm_tab (
     index_name         IN VARCHAR2,
     spm_type           IN NUMBER,
     spm_name           IN VARCHAR2,
     model_name         IN VARCHAR2,
     key_string         IN VARCHAR2 DEFAULT NULL,
     tablespace_name    IN DBMS_ID DEFAULT NULL,
     degree             IN NUMBER DEFAULT NULL,
     prefix_length      IN NUMBER DEFAULT NULL,
     options            IN VARCHAR2 DEFAULT NULL,
     network_owner      IN DBMS_ID DEFAULT NULL,
     network_name       IN VARCHAR2 DEFAULT NULL);

ノート:

このサブプログラムは、今後のリリースで非推奨になります。かわりにSEM_APIS.CREATE_INDEX_ON_RESULT_TABサブプログラムを使用することをお薦めします。

説明

サブジェクト予測マトリックス表に一意または一意でないBツリー索引を作成します。

パラメータ

index_name

索引の名前。

spm_type

SPM表のタイプ。

次のいずれかの値を使用できます。
  • SEM_APIS.SPM_TYPE_SVP
  • SEM_APIS.SPM_TYPE_MVP
  • SEM_APIS.SPM_TYPE_PCN
spm_name

SPM表の名前の一部として使用する文字列。ターゲットがMVP表の場合は、プロパティの名前を指定します。

model_name

RDFモデルの名前。

key_string

索引キーは、ターゲットSPM表に含まれている列が要素であるシーケンスです。これには、SPM表構造内のプロパティの順序(1から始まる)に基づいた序数が使用されます。サブジェクト(またはSTART_NODE_ID)はゼロ番目の位置にあります。サブジェクト(つまり、START_NODE_ID列)を含めるには、Sを使用します。

n-thプロパティにオブジェクトまたは名前付きグラフを含めるには、それぞれnPまたはnGを使用します。したがって、2P2Gはそれぞれ、SPM表内の2番目のプロパティのオブジェクトIDと名前付きグラフIDを格納する列を示しています。

サブジェクトまたはプロパティにインライン字句値がある場合は、<n><component-code> (ここで、サブジェクトの場合はn=0)という書式を使用してそれらを参照します。したがって、たとえば0VP2VTは、それぞれSPM表内のS_VNAME_PREFIX列と<2nd_property>_VALUE_TYPE列を示しています。

tablespace_name

索引作成先の表領域。

degree

使用する並列度。

prefix_length

圧縮する先頭の索引キー列の数。

options

将来使用するために予約済

network_owner

RDFネットワークの所有者。(表1-2を参照してください。)

network_name

RDFネットワークの名前。(表1-2を参照してください。)

使用に関するノート

次の例では、モデルM1で定義されているSVP表FLHFに索引name_idxを作成します。key_stringパラメータ'2P 1P S'は、そのキーが、表内の2番目のプロパティに対応する列の(数値ID)値であり、その後に表内の1番目のプロパティからの値と、サブジェクト(つまり、START_NODE_ID列)が続くことを示しています。詳細は、例1-103を参照してください。

BEGIN
  SEM_APIS.CREATE_INDEX_ON_SPM_TAB(
       index_name.   => ‘name_idx’
     , spm_type      => SEM_APIS.SPM_TYPE_SVP
     , spm_name      => 'FLHF'
     , model_name    => 'M1'
     , key_string    => ' 2P 1P S '
     , network_owner => 'RDFUSER'
     , network_name  => 'NET1'
  );
END;
/