KB4522126 - FIX: quando si eseguono query sys.database_scoped_configurations in SQL Server 2016 potrebbero essere visualizzati risultati errati

Si applica a
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)

Sintomi

Quando si esegue una query che inserisce l'output di sys.database_scoped_configurations in una variabile di tabella o in una tabella temporanea in Microsoft SQL Server 2016 e quindi si seleziona da tale tabella variabile o tabella temporanea come illustrato nell'esempio seguente, si potrebbe notare che esiste una sola voce per ogni database.

ELIMINARE LA TABELLA, SE ESISTE #h

CREATE TABLE #h(configuration_id INT, name sysname, value SQL_VARIANT, value_for_secondary SQL_VARIANT)

INSERISCI IN #h(configuration_id, nome, valore,value_for_secondary)

SELEZIONA * DA sys.database_scoped_configurations D'

SELEZIONARE * DA #h H

oppure

DECLARE @database\_scoped\_configurations TABLE(x INT);

INSERISCI IN @database\_scoped\_configurations

SELEZIONA configuration_id

DA sys.database_scoped_configurations;

SELEZIONA * DA @database\_scoped\_configurations

Stato

Microsoft ha confermato che si tratta di un problema relativo ai prodotti elencati nella sezione "Si applica a".

Risoluzione

Questo problema è stato risolto nel seguente aggiornamento cumulativo per SQL Server:

Informazioni sugli aggiornamenti cumulativi per SQL Server:

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

Soluzione alternativa

Per risolvere questo problema, è possibile aggiungere una clausola TOP nella parte SELECT dell'inserto per ottenere il risultato corretto. Ecco un esempio:

DICHIARA @database_scoped_configurations TABELLA(x INT);

INSERISCI IN @database_scoped_configurations

SELEZIONA TOP 100 configuration_id

DA sys.database_scoped_configurations

Riferimenti

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