Condividi tramite


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:

  1. Creazione di un catalogo full-text per archiviare indici full-text.
  2. 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

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

17 luglio 2006

Nuovo contenuto:
  • Aggiunta della nota in cui viene indicato che la funzionalità di indicizzazione full-text non è abilitata per impostazione predefinita nei database creati mediante Management Studio.