此指令會啟用 DB2 Text Extender 所用的文字直欄。
授權
您在表格中至少需有下列其中一種權限:
ALTER 專用權
SELECT 專用權
UPDATE 專用權。
>>-ENABLE TEXT COLUMN--table-name--text-column-name-------------> >-----+--------------------------+--HANDLE--handle-column-name--> '-FUNCTION--function-name--' >-----+-----------------------+---------------------------------> '-| text-information |--' >-----+----------------------------+----------------------------> '-| index-characteristics |--' >-----+----------------------------+----------------------------> '-UPDATEINDEX--+-UPDATE---+--' '-NOUPDATE-' >-----+------------------------------+--------------------------> '-TABLESPACE--tablespace-name--' >-----+---------------------+---------------------------------->< '-COMMITCOUNT--count--' text-information |---+---------------+---+-----------------+---+---------------+-| '-CCSID--ccsid--' '-LANGUAGE--語言--' '-FORMAT--格式--' index-characteristics |---+------------+---+-PRECISE----+-----------------------------> '-INDEXTYPE--' +-LINGUISTIC-+ '-NGRAM------' >-----+--------------------------------+------------------------> '-INDEXOPTION--+-CASE_ENABLED-+--' '-NORMALIZED---' >-----+----------------------------------------------------------------------------+> | .-,--------. | | V | | '-INDEXPROPERTY--SECTIONS_ENABLED--+-DOCUMENTMODEL--+---(-----model---+---)--' '-DOCUMENTMODELS-' >-----+----------------------------------------+----------------> '-UPDATEFREQ--+-NONE------------------+--' '-| update-frequency |--' >-----+-------------------------------------------------------------------------------+> +-DIRECTORY--directory----------------------------------------------------------+ | .--------------------------------------------------------------------------. | | | .-,---------------------. | | | V V | | | '----DIRECTORY--directory--ON--+-NODE--+---(-----node--+-----------+--+---)---+-' '-NODES-' '-TO--node--' >---------------------------------------------------------------| update-frequency |---MIN--(--mindocs--)--D---(--+-*------------+---)---H---------> | .-,-------. | | V | | '----0...6---+-' .-,---------. V | >----(--+-*-------------+---)---M---(-----0...59---+---)--------| | .-,--------. | | V | | '----0...23---+-'
指令參數
如果您在啟用 Ngram 索引的文字直欄時指定一個 CCSID, 此 CCSID 必須和資料庫 的 CCSID 相同,且搜尋期間使用的 CCSID (資料庫 的 CCSID) 必須符合此 CCSID。
若要尋找預設 CCSID,請使用︰
db2tx get text cfg
安裝預設值是資料庫 CCSID。
如果未指定此關鍵字,則會使用文字架構設定中所指定的 CCSID。會略過其後對文字架構設定所做的變更; 所用的值是啟用直欄時已有的值,而不是為文字文件編製索引時所有的值。
其它支援之 CCSID 的相關資訊,請參閱CCSID。
此關鍵字會為整個直欄指定一次語言。您可用 INSERT 陳述式中的 INIT_TEXT_HANDLE 函數, 來置換個別插入之文字文件的這個值。
如果未指定此關鍵字,則會使用文字架構設定中所指定的語言。 會略過其後對文字架構設定所做的變更; 所用的值是啟用直欄時已有的值,而不是為文字文件編製索引時所有的值。
支援的語言皆列在表 5。
結構性文件所支援的文件格式有:
擁有 ASCII_SECTIONS 格式的文件不能包含巢狀區段。 (有關巢狀區段的資訊,請參閱使用結構化文件 (區段支援)。) 區段的起始標籤的結尾即為下一個起始標籤。
對於 HTML 文件,我們提供一個文件模型檔範例。 它包含了標準 HTML 定義子集,如有需要的話可以修改。 HTML 文件不能包含巢狀區段。
XML 文件處理程序包括「文件類型定義 (DTD)」評估。 系統會根據 DTD 來檢查指定給文件的模型。 如果文件模型檔中定義的標籤未定義於 DTD 中, 表示文件尚未編製索引。 若無可辨識的 DTD 未定義模型,則不會編製此文件的索引。 XML 文件可以包含巢狀區段。
對於這些格式,您必須在文件模型檔中指定結構資訊。 請參閱使用結構化文件 (區段支援)。 若您指定的是 TDS 與 INDEXPROPERTY SECTION_ENABLED 格式,則會認定 文件格式是 ASCII_SECTIONS。
未於模型檔中定義的標籤,則以一般方式,根據索引類型來編製索引。
此關鍵字會為整個直欄指定一次格式。您可用 INSERT 陳述式中的 INIT_TEXT_HANDLE 函數, 來置換個別插入之文字文件的這個值。
如果未指定此關鍵字,則會使用文字架構設定中所指定的格式。 會略過其後對文字架構設定所做的變更; 所用的值是啟用直欄時已有的值,而不是為文字文件編製索引時所有的值。
如果未指定 INDEXTYPE 關鍵字,則會使用文字架構設定中的值。
Ngram 索引不支援 XML 格式的文件。
SECTIONS_ENABLED 會指定已選取的索引類型可以包含 文件結構的相關資訊。
DOCUMENTMODEL/DOCUMENTMODELS model 指定要編製索引的文件的預設相關模型。 若使用索引特性 SECTIONS_ENABLED,則必須指定模型名稱。 若指定模型列示,則第一個模型會用作此索引的預設模型。 若文件未參照至模型、或搜尋期間未指定模型,則在編製索引時會使用預設模型。
可用於模型名稱的字元是 a-z、A-Z 以及 0-9。
指定的模型名稱必須與模型定義檔 desmodel.ini 中的模型定義相對應。
若要變更與索引相關的模型,請執行下列步驟:
此語法會在更新索引中予以說明。
如果未指定 UPDATEFREQ,則會使用文字架構設定中所指定的預設頻率。
要訣 |
---|
如果有數個表格,請考慮不要使用預設值。 藉由產生表格的個別更新頻率設定,您可避免同時為所有的表格編製索引, 及造成系統資源上的不必要的長期載入。 |
如果已用 ENABLE TEXT TABLE 來設定整個表格的這些更新頻率設定, 則會略過它們。
此為執行 DB2 Text Extender 伺服器的系統上的一個目錄。 如果該目錄不存在,則會自動建立。 如果已存在,請確定在 UNIX 平台上該目錄提供案例擁有者的讀取/寫入許可權, 檢查已指定的「隔離使用者 ID」是否與建立 DB2 案例時所指定的不同。
如果未指定 DIRECTORY 關鍵字,則會使用文字架構設定中的 DIRECTORY 設定值。
如果已用 ENABLE TEXT TABLE 來設定整個表格的此設定, 則會略過它。
如果使用的是分割資料庫,您可將一個共用索引路徑名稱指定給所有節點, 或某範圍的節點,或將不同索引目錄路徑指定給每個節點。
如果不指定此關鍵字, 則會取用文字架構設定中的值。
用法注意事項
此指令會將 handle 直欄新增到指定的 DB2 表格中。每一個 handle 直欄結合一個文字直欄,由 DB2 Text Extender 的函數使用。
如果尚未啟用此表格來建立共用索引, 則會建立與此文字直欄有關的索引。
也會在資料庫中建立日誌表格。日誌表格是用來將變更(插入、更新及刪除)記錄到文字直欄中。 插入、更新及刪除起始動作定義是為文字直欄所定義, 可保留最新的日誌表格。
如果所要啟用的文字直欄屬於多重節點群組的一個表格, 則所有實體節點都必須可使用所指定的索引目錄。 如果使用的是文字架構中所指定的預設目錄, 請確定節點群組的所有節點上都可使用此路徑。 如果不方便,您可在 ENABLE TEXT COLUMN 指令中指定每個節點的特定路徑。
如果變更了含有為 DB2 Text Extender 所啟用之表格的節點群組節點架構, 您必須為表格重新編製索引。
要訣 |
---|
如果在此步驟中用完日誌空間,請參閱啟用大型表格中的文字直欄以取得可能的解決方法。 |