Simptom:

Kada pokušavate priložiti .MDF bazu podataka u SQL Server, vidite sljedeću poruku o grešci:

Dohvaćanje podataka za ovaj zahtjev nije uspjelo. (Microsoft.SqlServer.Management.Sdk.Sfc)

Došlo je do izuzetka prilikom izvršavanja Transact-SQL naredbe ili grupe. (Microsoft.SqlServer.ConnectionInfo)

xxx.mdf nije primarna datoteka baze podataka. (Microsoft SQL Server, Greška: 5171)

gdje je 'xxx.mdf naziv MDF fajla koji se prilaže.

Snimak ekrana poruke o grešci:

Snimak ekrana greške "Nije primarna datoteka baze podataka"

Precizno objašnjenje:

Podaci u MDF datoteci su pohranjeni kao stranice, svaka stranica je 8 KB. Prva stranica se zove stranica zaglavlja datoteke, koja sadrži most važne informacije o cijeloj datoteci, kao što su potpis datoteke, veličina datoteke, kompatibilnost, itd. Preostale stranice također sadrže važne informacije, uključujući informacije o dodjeli stranica kao i stvarne podatke.

Ako su stranica zaglavlja MDF datoteke ili druge važne stranice za upravljanje oštećene ili oštećene i Microsoft ih ne može prepoznati SQL Server, onda SQL Server će misliti da cijela datoteka nije valjana primarna datoteka baze podataka i prijaviti ovu grešku.

Možete koristiti naš proizvod DataNumen SQL Recovery da biste oporavili podatke iz oštećene MDF datoteke i riješili ovu grešku.

Primjeri fajlova:

Uzorak oštećenih MDF datoteka koje će uzrokovati grešku:

SQL Server verzija Oštećena MDF datoteka MDF fajl popravljen od strane DataNumen SQL Recovery
SQL Server 2005 Greška1_1.mdf Greška1_1_fixed.mdf
SQL Server 2008 R2 Greška1_2.mdf Greška1_2_fixed.mdf
SQL Server 2012 Greška1_3.mdf Greška1_3_fixed.mdf
SQL Server 2014 Greška1_4.mdf Greška1_4_fixed.mdf