Introduzione alla ricerca full-text
Data aggiornamento: 17 luglio 2006
L'impostazione della funzionalità di indicizzazione full-text in una tabella inclusa in Microsoft SQL Server 2005 è un processo in due fasi:
- Creazione di un catalogo full-text per archiviare indici full-text.
- Creazione degli indici full-text.
[!NOTA] I database di SQL Server sono abilitati per la funzionalità full-text per impostazione predefinita, a meno che non vengano creati mediante SQL Server Management Studio. Per abilitare la ricerca full-text in un database quando viene creato mediante Management Studio, vedere Procedura: Creazione di un database (SQL Server Management Studio). Per abilitare la ricerca full-text in un database esistente, vedere Procedura: Attivazione di un database per indicizzazione full-text (SQL Server Management Studio).
[!NOTA] È inoltre possibile creare indici full-text in viste indicizzate. Per ulteriori informazioni sulle viste indicizzate, vedere Tipi di viste.
Impostazione della ricerca full-text in AdventureWorks
Nell'esempio seguente viene creato un indice full-text nella tabella Document
di AdventureWorks.
Per creare un catalogo full-text denominato AdvWksDocFTCat
, utilizzare l'istruzione CREATE FULLTEXT CATALOG
:
CREATE FULLTEXT CATALOG AdvWksDocFTCat
Questa istruzione determina la creazione del catalogo full-text nella directory predefinita specificata durante l'installazione. La cartella denominata AdvWksDocFTCat
si trova nella directory predefinita.
[!NOTA] Per specificare la posizione della directory, utilizzare la clausola IN PATH. Per ulteriori informazioni, vedere CREATE FULLTEXT CATALOG (Transact-SQL).
In alternativa, è possibile creare un catalogo full-text utilizzando Management Studio. In Esplora oggetti espandere la cartella Archivio nel database in cui si desidera creare il catalogo full-text, fare clic con il pulsante destro del mouse sulla cartella Cataloghi full-text e quindi scegliere Nuovo catalogo full-text. Per ulteriori informazioni, vedere Nuovo catalogo full-text (pagina Generale).
Gli ID dei cataloghi full-text iniziano da 00005 e vengono incrementati di un'unità per ogni catalogo creato.
Se possibile, è consigliabile creare cataloghi full-text sulle unità fisiche corrispondenti. Poiché il processo di creazione di un indice full-text richiede l'esecuzione di molte operazioni di I/O (in senso lato, consiste nella lettura di dati da SQL Server e quindi nella scrittura dell'indice nel file system), è opportuno evitare che il sottosistema di I/O diventi un collo di bottiglia.
Dopo la creazione del catalogo full-text, è necessario generare un indice full-text. Prima di creare un indice full-text nella tabella Document
, è tuttavia necessario determinare se la tabella dispone di un indice univoco che non supporta valori Null ed è costituito da una singola colonna. Il servizio Microsoft Full-text Engine for SQL Server (MSFTESQL) utilizza questo indice univoco per eseguire il mapping di ogni riga della tabella a una chiave univoca comprimibile.
Per creare un indice univoco che non supporta valori Null ed è costituito da una singola colonna, eseguire l'istruzione seguente:
CREATE UNIQUE INDEX ui_ukDoc ON Production.Document(DocumentID)
[!NOTA] La tabella
Document
dispone già di una colonna di questo tipo. Il codice precedente ha solo scopo illustrativo.
Dopo la creazione di una chiave univoca, è possibile generare un indice full-text nella tabella Document
.
CREATE FULLTEXT INDEX ON Production.Document
(
Document --Full-text index column name
TYPE COLUMN FileExtension --Name of column that contains file type information
Language 0X0 --0X0 is LCID for neutral language
)
KEY INDEX ui_ukDoc ON AdvWksDocFTCat --Unique index
WITH CHANGE_TRACKING AUTO --Population type
GO
In alternativa, è possibile creare un indice full-text mediante l'Indicizzazione guidata full-text. Per ulteriori informazioni, vedere Procedura: Avvio dell'Indicizzazione guidata full-text (SQL Server Management Studio).
Per informazioni sugli aspetti da considerare nella scelta della lingua delle colonne, vedere Considerazioni internazionali per la ricerca full-text.
Per monitorare lo stato di popolamento, utilizzare la funzione FULLTEXTCATALOGPROPERTY o OBJECTPROPERTYEX. Per ottenere lo stato di popolamento del catalogo, eseguire l'istruzione seguente:
SELECT FULLTEXTCATALOGPROPERTY('AdvWksDocFTCat', 'Populatestatus')
In genere, se è in corso un popolamento completo, il risultato restituito è 1.
Vedere anche
Altre risorse
FULLTEXTCATALOGPROPERTY (Transact-SQL)
OBJECTPROPERTYEX (Transact-SQL)
CREATE FULLTEXT CATALOG (Transact-SQL)
CREATE FULLTEXT INDEX (Transact-SQL)
Guida in linea e informazioni
Cronologia modifiche
Versione | Cronologia |
---|---|
17 luglio 2006 |
|