|
![]() | Fulltext v 602SQL | Fulltextové systémy - indexování | ![]() |
Dokumenty, s nimiž fulltextový systém pracuje, jsou zaznamenány v tabulkách dokumentů. Každá tabulka dokumentů obsahuje:
Pro generování unikátních čísel nových dokumentů může sloužit sekvence FTX_DOCIDid vytvořená při založení fulltextového systému. Typicky má sloupec s číslem dokumentu definovanou implicitní hodnotu FTX_DOCIDid.nextval. Tato implicitní hodnota zajistí, že každý nový záznam v tabulce dokumentů automatický obdrží číslo dokumentu.
V jednom fulltextovém systému lze indexovat dokumenty z více různých tabulek dokumentů. Přitom je třeba zajistit, že čísla dokumentů budou unikátní přes všechny takové tabulky. Proto je výhodné využívat pro generování čísel sekvenci. Lze však místo ní využít i libovolný jiný způsob přidělování unikátních čísel. Čísla dokumentu vždy musí být kladná.
Ve fulltextovém systému lze zaindexovat i více sloupců z jedné tabulky dokumentů. V takovém případě lze volit ze dvou přístupů:
Za slovo se pro indexování a vyhledávání dokumentů v implicitním nastavení považuje maximální posloupnost znaků, která začíná písmenem, číslicí, znakem @ nebo _ a obsahuje kromě těchto znaků případně ještě pomlčky. Tak například MS-DOS je jedno slovo, zatímco TCP/IP jsou dvě slova. Slovo je také například ABC_DE_@14-23X, ale nikoli /123X.
Množinu znaků tvořící slovo a množinu znaků, které tvoří začátek slova, lze při návrhu fulltextu zvolit či upřesnit (klauzule WORD_STARTERS a WORD_CHARS příkazu CREATE FULLTEXT).
Ve slovech se nerozlišuje velikost písmen, lze však vyhledávat slova s přihlédnutím k velikosti písmen.
Pro každý jazyk existuje seznam slov (spojek, předložek apod.), která se neindexují. Tato slova nelze vyhledat, a to ani ve frázi (přesněji řečeno: je-li použito ve frázi, může na jeho místě být libovolné slovo).
![]() | Fulltext v 602SQL | Fulltextové systémy - indexování | ![]() |