Skip Navigation LinksALVAO 10.4ALVAO Service DeskImplementace systému v organizaciFull-Text Search Skip Navigation Links.


Full-Text Search

ALVAO dokáže rychle vyhledávat informace v databázi pomocí technologie Full-Text Search (FTS). Pokud je FTS vypnutý, vyhledávání může být pomalé a funkce prohledávání deníků požadavků není vůbec dostupná.

Poznámka:
Pokud na SQL Serveru byla v době upgrade Alvao na aktuální verzi nainstalována komponenta Full-Text and Semantics Extractions for Search, FTS se při upgrade automaticky zapne.

Kontrola zapnutí Full-Text Search

Instalaci a nastavení FTS zkontrolujte SQL skriptem:

IF (1 != ISNULL(fulltextserviceproperty('IsFulltextInstalled'),0)) PRINT N'FTS není nainstalováno.' ELSE
IF (1 != ISNULL((SELECT 1 FROM [dbo].[sysfulltextcatalogs] WHERE name = 'ftCatalogAlvao'),0))
PRINT N'FTS není zapnuto.' ELSE PRINT N'FTS je nainstalováno a zapnuto.'

Pokud FTS není nainstalováno, do SQL Serveru nainstalujte komponentu Full-Text and Semantics Extractions for Search, která je volitelnou součástí SQL Database Engine. Tuto komponentu můžete nainstalovat při prvotní instalaci MS SQL Serveru, nebo ji doinstalovat později instalátorem SQL Server pro libovolnou edici.

Poznámka:
SQL Server od verze 2012 ve výchozím nastavení již podtržítko ("_") nepovažuje za oddělovač slov. Kvůli tomu od dané verze nelze vyhledávat podle jednotlivých slov, která jsou v textu oddělena podtržítkem, ale je nutné do vyhledávače zadat celou "frázi" včetně podtržítek, příp. její počáteční část. Pokud vám toto chování nevyhovuje, SQL Server můžete nastavit tak, aby používal stejné oddělovače slov jako starší verze.

Zapnutí Full-Text Search

Upozornění:
FTS doporučujeme zapnout v době mimo běžnou provozní dobu Alvao. Po zapnutí FTS začne SQL Server vytvářet indexy pro vyhledávání, což může dočasně snížit výkon SQL Serveru.

Pokud FTS není v databázi ALVAO zapnuto, spusťte následující SQL skript. Pro jeho spuštění musíte být členem skupiny sysadmin, db_owner, nebo db_ddladmin.

DECLARE @languageLCID int;
SELECT TOP 1 @languageLCID = lcid from syslanguages where langid = @@DEFAULT_LANGID;
DECLARE @CreateFulltext nvarchar(MAX);
SET @CreateFulltext = N'CREATE FULLTEXT CATALOG ftCatalogAlvao WITH ACCENT_SENSITIVITY = OFF AS DEFAULT;
CREATE FULLTEXT INDEX ON tHdTicket (FullTextSearch LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', mHdTicketNotice LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', sHdTicket LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tHdTicket_iHdTicketId WITH STOPLIST OFF;
CREATE FULLTEXT INDEX ON tAct (sAct LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', mActNotice LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', sActFrom  LANGUAGE '
+CAST(@languageLCID AS nvarchar)+N', sActTo LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', sActToEmail LANGUAGE '+CAST(@languageLCID AS nvarchar)+N', sActFromEmail LANGUAGE '
+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tAct_iActId WITH STOPLIST OFF;
CREATE FULLTEXT INDEX ON tDocument (sDocument LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tDocument_iDocumentId WITH STOPLIST OFF;
CREATE FULLTEXT INDEX ON tArticle  (HtmlArticleBinary TYPE COLUMN HtmlArticleBinaryExt, sArticle, mArticleAnnotation, mArticle  LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tArticle_iArticleId;
CREATE FULLTEXT INDEX ON tHdTicketApprovalItem (mHdTicketApprovalItemNotes LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_tHdTicketApprovalItem WITH STOPLIST OFF;
CREATE FULLTEXT INDEX ON HdSectionLoc (HdSectionKeywords LANGUAGE '+CAST(@languageLCID AS nvarchar)+N') KEY INDEX PK_HdSectionLoc_HdSectionLocId WITH STOPLIST OFF;';
EXECUTE sp_executesql @CreateFulltext;
Poznámka
:


Uvedený skript při vyhledávání skloňuje slova podle výchozího jazyka databáze. Pokud chcete slova skloňovat podle jiného jazyka, nahraďte druhý řádek řádkem, např.:

SET @languageLCID = 1029

Číslo 1029 nahraďte kódem národního prostředí, které chcete pro skloňování slov použít.

 Pokud chcete změnit jazyk dodatečně, FTS vypněte a zapněte znovu.

Vypnutí Full-Text Search

Pro vypnutí katalogu Full-Text Search spusťte následující SQL skript. Pro jeho spuštění musíte být členem skupiny sysadmin, db_owner, nebo db_ddladmin.

DROP FULLTEXT INDEX ON tHdTicket;
DROP FULLTEXT INDEX ON tAct;
DROP FULLTEXT INDEX ON tDocument;
IF EXISTS (SELECT * FROM sys.tables t INNER JOIN  sys.fulltext_indexes fi ON t.[object_id] = fi.[object_id] WHERE t.name= 'tArticle')
DROP FULLTEXT INDEX ON tArticle;
IF EXISTS (SELECT * FROM sys.tables t INNER JOIN  sys.fulltext_indexes fi ON t.[object_id] = fi.[object_id] WHERE t.name= 'tHdTicketApproval')
DROP FULLTEXT INDEX ON tHdTicketApproval;
IF EXISTS (SELECT * FROM sys.tables t INNER JOIN  sys.fulltext_indexes fi ON t.[object_id] = fi.[object_id] WHERE t.name= 'tHdTicketApprovalItem')
DROP FULLTEXT INDEX ON tHdTicketApprovalItem;
IF EXISTS (SELECT * FROM sys.tables t INNER JOIN  sys.fulltext_indexes fi ON t.[object_id] = fi.[object_id] WHERE t.name= 'HdSectionLoc')
DROP FULLTEXT INDEX ON HdSectionLoc;
DROP FULLTEXT CATALOG ftCatalogAlvao;

 

Nenašli jste co jste hledali? Zeptejte se našeho týmu technické podpory.