Symptoom:
Wanneer u probeert een .MDF-database in SQL Serverziet u het volgende foutbericht:
Het ophalen van gegevens voor dit verzoek is mislukt. (Microsoft.SqlServer.Management.Sdk.Sfc)
Er is een uitzondering opgetreden bij het uitvoeren van een Transact-SQL-instructie of batch. (Microsoft.SqlServer.ConnectionInfo)
xxx.mdf is geen primair databasebestand. (Microsoft SQL Server, Fout: 5171)
waarbij 'xxx.mdf de naam is van het MDF-bestand dat moet worden bijgevoegd.
Screenshot van foutmelding:
Nauwkeurige uitleg:
De gegevens in het MDF-bestand worden opgeslagen als pagina's, elke pagina is 8 KB. De eerste pagina wordt de bestandskoppagina genoemd, die de most belangrijke informatie over het hele bestand, zoals de bestandshandtekening, bestandsgrootte, compatibiliteit, enz. De overige pagina's bevatten ook de belangrijke informatie, inclusief de paginatoewijzingsinformatie en de feitelijke gegevens.
Als de koptekstpagina van het MDF-bestand of andere belangrijke beheerpagina's beschadigd of beschadigd zijn en niet door Microsoft kunnen worden herkend SQL Serverdan SQL Server denkt dat het hele bestand geen geldig primair databasebestand is en rapporteert deze fout.
U kunt ons product gebruiken DataNumen SQL Recovery om de gegevens van het corrupte MDF-bestand te herstellen en deze fout op te lossen.
Voorbeeldbestanden:
Voorbeeld van corrupte MDF-bestanden die de fout veroorzaken:
SQL Server versie | Beschadigd MDF-bestand | MDF-bestand opgelost door DataNumen SQL Recovery |
SQL Server 2005 | Fout1_1.mdf | Fout1_1_fixed.mdf |
SQL Server 2008 R2 | Fout1_2.mdf | Fout1_2_fixed.mdf |
SQL Server 2012 | Fout1_3.mdf | Fout1_3_fixed.mdf |
SQL Server 2014 | Fout1_4.mdf | Fout1_4_fixed.mdf |