2.5.5 表の作成
表の作成には,定義系SQLのCREATE TABLEを使用します。CREATE TABLEでは,文書を登録する列に対する列定義のデータ型として,「SGMLTEXT」と指定してください。
また,抽象データ型定義内LOB格納用RDエリア指定では,属性名にはSGMLTEXTを,LOB属性格納用RDエリア名には「2.5.4 データ格納領域の確保」でSGMLTEXTデータ本体の格納領域として確保したRDエリアを指定してください。
CREATE TABLEのプラグインオプションには,次のフォーマットで文書登録種別および各SGML定義情報を指定してください。
- CREATE TABLEでのプラグインオプションの形式
-
PLUGIN
'〔文書登録種別〕
〔SGML定義情報〕...'
- オペランド
-
-
文書登録種別
SGMLTEXT型の列に登録するテキストデータの種別を指定します。テキストデータの種別を,表2-6および表2-7のように<TEXTTYPE>タグで囲んだ形式で指定してください。なお,文書登録種別の指定を省略した場合は,SGML文書として扱います。
-
SGML定義情報
次の内容を指定します。
- DTDの登録名称
-
DTDの登録名称は,<DTD>から始まり,</DTD>で終了する部分に記述します。
- 正規化パラメタの登録名称
-
正規化パラメタの登録名称は,<NORparm>から始まり,</NORparm>で終了する部分に記述します。
- 文字コード指定(文字コードがutf-8の場合だけ)
-
文字コード種別は,<Unicode>から始まり,</Unicode>で終了する部分に「MS」または「JIS」を記述します。指定を省略した場合は,「MS」が仮定されます。
MS:MS-Unicode
JIS:JISX0221
なお,extracts関数への引数はMS-Unicodeで指定する必要があるため,extracts関数を使用する場合は「MS」を指定してください。
Text Search Plug-inの使用する文字コードによる,SGML定義情報の指定の要否を表2-6および表2-7に示します。
表2‒6 SGML定義情報の指定(文字コードがShift-JISまたはEUCの場合) テキストデータの種別
文書登録種別
DTD登録名称
正規化パラメタ登録名称
SGML文書
<TEXTTYPE>SGML</TEXTTYPE>
必須
正規化する場合
XML文書
<TEXTTYPE>SGML</TEXTTYPE>
必須
不要
プレーン文書
<TEXTTYPE>PLAIN</TEXTTYPE>
不要
不要
表2‒7 SGML定義情報の指定(文字コードがutf-8の場合) テキストデータの種別
文書登録種別
DTD登録名称※
正規化パラメタ登録名称
文字コード指定
XML文書
<TEXTTYPE>SGML</TEXTTYPE>
必須
不要
指定可
プレーン文書
<TEXTTYPE>PLAIN</TEXTTYPE>
指定不可
指定不可
指定可
-
なお,SGML定義情報の登録名称には,「phssgmlreg(SGML定義情報登録ユティリティ)」で指定した名称を指定してください。なお,CREATE TABLEの詳細については,マニュアル「HiRDB SQLリファレンス」を参照してください。
CREATE TABLEの指定例を図2-8,図2-9および図2-10に示します。