Le query full-text di SQL Server permettono di effetture ricerche sul testo contenuto in un database in maniera più precisa di quanto si possa fare con una normale query che utilizza l'operatore LIKE .
Tra l'altro, esiste un meccanismo automatico in grado di ignorare automaticamente le famose parole di disturbo, come le preposizioni o altre parole ritenute troppo frequenti per essere usate nelle query.
Se avete almeno una volta nella vita usato google, sicuramente avete capito di cosa sto parlando.
Dunque, cerchiamo di capire come utilizzare queste query full-text per rendere il motore di ricerca del nostro sito più preciso.
Indicizzare una tabella
Per prima cosa, perchè sia possibile effettuare query full-text su una tabella, è necessario creare una catalogo sulla tabella in questione ed impostare un popolamento incrementale sulla stessa.
Per capirci, cominciamo con il lanciare l'Enterprise Manager di SQL Server 2000.
Selezioniamo una tabella, facciamo click con il pulsante destro del mouse e selezioniamo la voce 'Tabella con indice full-text', quindi ' Definisci indicizzazione full-text per una tabella '.
A questo punto pariterà un wizard che ci permetterà di creare il catalogo full-text in maniera molto semplice ed in poco tempo.
Perchè il catalogo possa essere creato è necessario che la nostra tabella abbia una chiave univoca.
Qualora ne fosse sprovvista è necessario creare un nuovo campo, oppure definire un nuovo indice su un campo esistente.
Basta poi selezionare i campi da indicizzare nel catalogo e la lingua (servirà per riconoscere le parole di disturbo, ad esempio).
E' sufficiente poi selezionare un catalogo: possiamo sceglierne uno esistente, o crearne uno nuovo, come nel nostro caso.
In genere si usa un nome del tipo "cat_tabella", anteponendo cat_ al nome della tabella: ci servirà anche in futuro per capire a quale tabella appartiene il catalogo in questione.
Una volta creato il catalogo, sarà necessario farne un popolamento completo, almeno la prima volta, per inserire all'interno tutti i valori dei campi della tabella.
Perchè poi il catalogo rimanga in sincronia con il contenuto della tabella, aggiungeremo un popolamento incrementale una volta al giorno.
A questo punto verrà creato il catalogo. Basterà popolare l'indice (stesso menu contestuale utilizzato per la creazione del catalogo) per iniziare a fare le nostre prime query.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.