ヘッダーをスキップ
Oracle® Textアプリケーション開発者ガイド
12cリリース1 (12.1)
B71317-04
  目次へ移動
目次
索引へ移動
索引

前
次
 

NDATAセクション

NDATAセクションをBASIC_SECTION_GROUPHTML_SECTION_GROUP、またはXML_SECTION_GROUPセクション・グループ・タイプに追加して、名前検索用に索引付けするデータを含むフィールドを排他的に指定できます。

ユーザーは、使用可能な2つのデータストア(MULTI_COLUMN_DATASTOREまたはUSER_DATASTORE)を使用して、名前データを含むテキスト・ドキュメントを合成できます。次の例では、MULTI_COLUMN_DATASTOREを使用して、索引付けする名前データを含む関連する列を選択します。

create table people(firstname varchar2(80), surname varchar2(80));
 insert into people values('John', 'Smith');
 commit;
 begin
   ctx_ddl.create_preference('nameds', 'MULTI_COLUMN_DATASTORE');
   ctx_ddl.set_attribute('nameds', 'columns', 'firstname,surname');
 end;
 / 

これによって、次の仮想テキストが索引付けのために作成されます。

<FIRSTNAME>
John
</FIRSTNAME>
<SURNAME>
Smith
</SURNAME>

これで、FIRSTNAMEおよびSURNAMEセクションにNDATAセクションを作成できます。

begin
  ctx_ddl.create_section_group('namegroup', 'BASIC_SECTION_GROUP');
  ctx_ddl.add_ndata_section('namegroup', 'FIRSTNAME', 'FIRSTNAME');
  ctx_ddl.add_ndata_section('namegroup', 'SURNAME', 'SURNAME');
end;
/

次に、以前に作成したデータストア・プリファレンスとセクション・グループ・プリファレンスを使用して、索引を作成します。

create index peopleidx on people(firstname) indextype is ctxsys.context
parameters('section group namegroup datastore nameds');

NDATAセクションでは、シングルバイト・データとマルチバイト・データの両方がサポートされていますが、文字および語句に関する制約があります。索引付けされるNDATAセクション・データには、次の制約があります。