Full-Text Search è un servizio di SQL Server che permette di indicizzare le tabelle, anche con contenuti HTML, e di effettuare ricerche performanti e con logiche fuzzy più "intelligenti" che vadano oltre il semplice LIKE. E' quindi uno strumento molto usato dagli sviluppatori web che forniscono funzionalità di ricerche all'interno del sito o suggerimenti su caselle di testo.
Questo servizio però non era disponibile sulla versione cloud di SQL Server disponibile su Azure, ma a Build 2015 è stato annunciato la possibilità di usarlo tramite i server V12 inseriti recentemente.
Per sfruttare questa funzione è necessario quindi avere migrato i database a quest'ultima versione; fatto questo possiamo utilizzare la normale sintassi TSQL, perciò prima di tutto dobbiamo creare il catalogo:
CREATE FULLTEXT CATALOG ProductsCatalog AS DEFAULT;
A questo punto dobbiamo creare l'indice sulla tabella e sulle colonne di nostro interesse.
CREATE FULLTEXT INDEX ON Products(Name) KEY INDEX Products_id ON ProductsCatalog;
Non ci resta che abilitare e avviare l'indicizzazione.
ALTER FULLTEXT INDEX ON Products ENABLE; ALTER FULLTEXT INDEX ON Products START FULL POPULATION;
Una volta completato possiamo utilizzare le funzionalità di query offerte da full-text search.
SELECT * FROM Products WHERE CONTAINS(Name, 'test');
Occorre prestare attenzione sull'uso di questa funzione perché va ad influire sulle prestazioni del database. Può sembrare che si sovrapponga ad Azure Search, il servizio gestito che permette di raggiungere gli stessi risultati, ma che è completamente indipendente sia come risorse che come provenienza delle informazioni.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare Intersect e Except per filtrare set di dati in TSql
Testare il failover sulle region in Azure Storage
Integrare un servizio esterno con .NET Aspire
Il nuovo persistent state in Blazor
Abilitare il rolling update su Azure Functions flex consumption
Utilizzare Locust con Azure Load Testing
Blazor e Static Web Assets in .NET 10
Importare un servizio esterno in .NET Aspire
Controllare la telemetria con .NET Aspire
Usare i settings di serializzazione/deserializzazione di System.Text.Json di ASP.NET all'interno di un'applicazione non web
Interazione con ReconnectModal in Blazor
Arricchire l'interfaccia di .NET Aspire




