Symptom
Tänk dig följande scenario:
- Du har en Microsoft SQL Server 2012-databas eller tidigare version som har flera filgrupper och den sekundära filgruppen är standardfilgruppen.
- Du säkerhetskopierar databasen och återställer den sedan på SQL Server 2014.
- Du anger den primära filgruppen som standardfilgrupp och försöker sedan ta bort den sekundära filgruppen.
I det här scenariot kan du inte ta bort den sekundära filgruppen även om alla datafiler under den tas bort. Felmeddelandet visar att den sekundära filgruppen inte kan tas bort eftersom den inte är tom.
Orsak
Problemet uppstår eftersom uppgraderingen av databasversionen skapar systemobjekt i standardfilgruppen istället för den primära filgruppen i SQL Server 2014. Den sekundära filgruppen innehåller fortfarande några systemobjekt.
Lösning
Den här korrigeringen introducerar spårningsflaggan 3861 för att flytta systemtabeller till den primära filgruppen.
När du har installerat snabbkorrigeringen som beskrivs i den här artikeln och startar SQL Server med spårningsflagga 3861 som startparameter kan systemtabellerna flyttas till den primära filgruppen.
Om du inte har återställt säkerhetskopian av databasen ännu kan du aktivera spårningsflaggan på servernivå:
dbcc traceon(3861,-1)
<Restore the database>
dbcc traceoff(3861,-1)
Problemet åtgärdades först i följande kumulativa uppdatering av SQL Server.
Kumulativ uppdatering 4 för SQL Server 2014 /en-us/help/2999197
Om kumulativa uppdateringar för SQL Server
Varje ny kumulativ uppdatering för SQL Server innehåller alla snabbkorrigeringar och alla säkerhetskorrigeringar som ingick i den tidigare kumulativa uppdateringen. Kolla in de senaste kumulativa uppdateringarna för SQL Server:
Status
Microsoft har bekräftat att detta är ett problem i de Microsoft-produkter som anges i avsnittet "Gäller".