Condividi tramite


Modifiche di rilievo apportate alla ricerca di Full-Text

In questo argomento vengono descritte le modifiche significative nella ricerca a testo pieno. Queste modifiche potrebbero interrompere applicazioni, script o funzionalità basate su versioni precedenti di SQL Server. È possibile che si verifichino questi problemi durante l'aggiornamento. Per ulteriori informazioni, vedere Usare l'Upgrade Advisor per prepararsi agli aggiornamenti.

Modifiche di rilievo nella ricerca Full-Text in SQL Server 2014

Informazioni da venire in un secondo momento.

Modifiche di rilievo nella ricerca Full-Text in SQL Server 2012

Regole di confronto modificate per il nome Colonna in sys.fulltext_languages

Le regole di confronto della colonna del nome della lingua nella vista del catalogo sys.fulltext_languages (Transact-SQL) sono state modificate dalle regole di confronto fisse del database di risorse alle regole di confronto predefinite selezionate per l'istanza di SQL Server. Questa modifica consente di confrontare i valori nella colonna name quando si aggiunge la vista sys.syslanguages (Transact-SQL) con sys.fulltext_languages. Ad esempio, è possibile eseguire una query per tutti i database in cui la lingua full-text predefinita è diversa dalla lingua predefinita del database.

Modifiche di rilievo nella ricerca Full-Text in SQL Server 2008

Le modifiche di rilievo seguenti si applicano alla ricerca Full-Text tra SQL Server 2005 e SQL Server 2008 e versioni successive.

Caratteristica / Funzionalità Sceneggiatura SQL Server 2005 SQL Server 2008 e versioni successive
CONTAINSTABLE con tipi definiti dall'utente (UDT) La chiave full-text è un tipo definito dall'utente di SQL Server, ad esempio MyType = char(1). La chiave restituita è del tipo assegnato al tipo definito dall'utente.

Nell'esempio si tratta di char(1).
La chiave restituita è del tipo definito dall'utente. Nell'esempio, si tratta di MyType.
top_n_by_rank parametro (delle istruzioni CONTAINSTABLE e FREETEXTTABLETransact-SQL) top_n_by_rank query che usano 0 come parametro. Errore con un messaggio di errore che indica che è necessario usare un valore maggiore di zero. Ha successo restituendo zero righe.
CONTAINSTABLE e ItemCount Eliminare righe dalla tabella di base prima di eseguire il push delle modifiche in MSSearch. CONTAINSTABLE restituisce il record fantasma. ItemCount non viene modificato. CONTAINSTABLE non restituisce record fantasma.
ItemCount La tabella contiene documenti nulli o colonne di tipo specificato. Oltre ai documenti indicizzati, i documenti null o con tipi Null vengono conteggiati nel valore ItemCount . Solo i documenti indicizzati vengono conteggiati nel valore ItemCount .
Catalog ItemCount Colonna BLOB con estensione NULL. Viene conteggiato nel ItemCount del catalogo Non viene conteggiato in ItemCount del catalogo.
UniqueKeyCount Esecuzione di query su un numero di chiavi univoco da un catalogo, ad esempio due tabelle (table1 e table2) ognuna con tre parole: word1, word2 e word3. UniqueKeyCount = 9. La tabella seguente riepiloga il modo in cui viene raggiunto questo valore:

table1 = 3

EOF per l'indice a testo completo di table1 = 1

table2 = 3

EOF per l'indice testo integrale di table2 = 1

catalogo testo completo = 1
Per ogni tabella, UniqueKeyCount è pari al numero di parole chiave distinte + 1 (0xFF). Non tratta le stesse parole nel > documento 1 come una nuova chiave univoca.

Per un catalogo, UniqueKeyCount è la somma di UniqueKeyCount di ognuna delle tabelle nel catalogo. Le parole identiche di tabelle diverse vengono considerate chiavi univoche. In questo caso il numero di chiavi univoco è 8.
opzione precompute rank a livello di server Ottimizzazione delle prestazioni delle query FREETEXTTABLE. Quando l'opzione è impostata su 1, le query FREETEXTTABLE specificate con top_n_by_rank usano i dati di classificazione precompilate archiviati nei cataloghi full-text. Non è supportato.
sp_fulltext_pendingchanges quando si aggiorna la colonna chiave Aggiorna la colonna chiave full-text in una riga di una tabella di 2 righe ed esegui sp_fulltext_pendingchanges. Vengono visualizzate entrambe le righe. Viene visualizzata una sola riga.
Funzioni inline Funzioni inline con un operatore full-text Restituisci un messaggio di errore. Restituisce le righe pertinenti.
sp_fulltext_database Abilitare o disabilitare la ricerca full-text usando sp_fulltext_database. Non vengono restituiti risultati per le query full-text. Se full-text è disabilitato per il database, le operazioni full-text non sono consentite. Restituisce i risultati alle query full-text e alle operazioni full-text consentite, anche se il full-text è disabilitato nel database.
Parole di stop specifiche del contesto locale Effettua ricerche in varianti locali specifiche di una lingua di origine, ad esempio francese belga e francese canadese. Le query in varianti specifiche per località vengono elaborate dai componenti (divisori di parole, derivatori e parole di stop) della lingua madre. Ad esempio, i componenti francesi (Francia) vengono usati per analizzare il francese (Belgio). Devi aggiungere esplicitamente parole non significative per ciascun identificatore di localizzazione (LCID). Ad esempio, è necessario specificare un LCID per Belgio, Canada e Francia.
Processo di stemming dello thesaurus Uso del thesaurus e delle forme di derivazione (stemming). Una parola del thesaurus viene ridotta alla radice automaticamente dopo l'espansione. Se si desidera il formato stemmato nell'espansione, è necessario aggiungere in modo esplicito il formato stemmato.
Percorso del catalogo di testo completo e del gruppo di file Utilizzo di cataloghi di testo completo. Ogni catalogo full-text ha un percorso fisico e appartiene a un filegroup. Viene considerato come un file di database. Un catalogo full-text è un oggetto virtuale e non appartiene ad alcun filegroup. Un catalogo full-text è un concetto logico che fa riferimento a un gruppo di indici full-text.

Nota: le istruzioni DDL di SQL Server 2005Transact-SQL che specificano cataloghi full-text funzionano correttamente.
sys.fulltext_catalogs Utilizzando il percorso, data_space_id e file_id di questa visualizzazione del catalogo. Queste colonne restituiscono un valore specifico. Queste colonne restituiscono NULL perché il catalogo full-text non si trova più nel file system.
sys.sysfulltextcatalogs Utilizzo della colonna path di questa tabella di sistema deprecata. Restituisce il percorso del file system del catalogo testo integrale. Restituisce NULL perché il catalogo full-text non si trova più nel file system.
sp_help_fulltext_catalogs

Il comando sp_help_fulltext_catalogs_cursor viene utilizzato per ottenere informazioni sui cataloghi full-text.
Utilizzo della colonna PATH di queste stored procedure deprecate. Restituisce il percorso del file system del catalogo full-text. Restituisce NULL perché il catalogo full-text non si trova più nel file system.
sp_help_fulltext_catalog_components Utilizzo di sp_help_fulltext_catalog_components di questa stored procedure. Restituisce un elenco di tutti i componenti (filtri, word breaker e gestori di protocollo), utilizzati per tutti i cataloghi full-text nel database corrente. Restituisce righe vuote.
DATABASEPROPERTYEX Utilizzo della proprietà IsFullTextEnabled . L'impostazione IsFullTextEnabled indica se la ricerca full-text è abilitata in un determinato database. Il valore di questa colonna non ha alcun effetto. I database utente sono sempre abilitati per la ricerca full-text.

Vedere anche

Differenze di comportamento nella ricerca full-text
Ricerca testuale completa