Sintomi
Quando si esegue una query sui dati della colonna BLOB (Binary Large Object) in Microsoft SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 o SQL Server 2014, è possibile che venga visualizzato un messaggio di errore analogo al seguente:
Errore: 5180 non è stato possibile aprire la banca di controllo file (FCB) per l'ID di file non valido 0 nel database "tempdb". Verificare il percorso del file. Eseguire DBCC CHECKDB.
Causa
Il problema si verifica perché SQL Server non gestisce correttamente un messaggio di attenzione (Annulla) durante la lettura dei dati BLOB. Questo problema si verifica solo quando la cache BLOB interna in memoria è disabilitata. Quando la cache è disabilitata, i dati della cache vengono cambiati nel database tempdb. In seguito, SQL Server legge i dati BLOB dal database tempdb anziché dalla cache in memoria. Dipende dalle dimensioni dei dati BLOB o dalla condizione di memoria del server, la cache BLOB interna in memoria è disabilitata.
Risoluzione
Il problema è stato risolto per la prima volta nel seguente aggiornamento cumulativo di SQL Server.
Aggiornamento cumulativo 2 per SQL Server 2012 SP2 /en-us/help/2983175
Aggiornamento cumulativo 11 per SQL Server 2012 SP1 /en-us/help/2975396
Aggiornamento cumulativo 13 per SQL Server 2008 R2 SP2 /en-us/help/2967540
Aggiornamento cumulativo 2 per SQL Server 2014 /en-us/help/2967546
Aggiornamento cumulativo 17 per SQL Server 2008 SP3 /en-us/help/2958696
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nell'aggiornamento cumulativo precedente. Vedere gli ultimi aggiornamenti cumulativi per SQL Server:
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".