Si applica a
SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Standard on Windows SQL Server 2016 Service Pack 2 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2019 on Windows

Sintomi

Si supponga di eseguire una query con aggregazioni e join, ad esempio COUNT WITH GROUP BY, in una tabella con indice filtrato in SQL Server usata come server remoto e che l'utente non abbia l'autorizzazione VIEW DEFINITION. In questo scenario, il server collegato considera l'indice filtrato come un indice univoco completo e la query restituisce risultati non corretti. 

Ulteriori informazioni

Quando si esegue una query remota, il processo del server collegato usa i metadati dell'indice per ottimizzare la query. Se non si dispone dell'autorizzazione VIEW DEFINITION per il database in cui viene eseguita la query, i metadati non indicano che l'indice è un indice filtrato e l'ottimizzatore di query considera l'indice come un indice univoco completo. Questa correzione corregge i metadati dell'indice per un indice filtrato quando non si dispone dell'autorizzazione VIEW DEFINITION a cui è stata concessa l'autorizzazione di tipo VIEW DEFINITION da parte di Query Optimizer.

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Risoluzione

Questo problema è stato risolto negli aggiornamenti cumulativi seguenti per SQL Server:

Nota:Questa correzione dovrebbe essere applicata al server collegato remoto.

Informazioni sugli aggiornamenti cumulativi per SQL Server:

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli aggiornamenti rapidi e tutte le correzioni di sicurezza incluse nell'aggiornamento cumulativo precedente. Vedere gli aggiornamenti cumulativi più recenti per SQL Server:

Soluzione alternativa

Per risolvere il problema, provare uno dei metodi seguenti:

  • Rimuovere l'indice filtrato.

  • Concedere la definizione della visualizzazione all'utente. Ad esempio: GRANT VIEW DEFINITION TO test_user;

Riferimenti

Informazioni sulla terminologia usata da Microsoft per descrivere gli aggiornamenti software.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.