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)

Iznimka se dogodila prilikom izvršavanja Transact-SQL izraza ili batch-a. (Microsoft.SqlServer.ConnectionInfo)

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

gdje je 'xxx.mdf naziv MDF datoteke koja se prilaže.

Snimak zaslona poruke o grešci:

Precizno objašnjenje:

Podaci u MDF datoteci pohranjuju se kao stranice, svaka stranica ima 8 KB. Prva stranica naziva se stranica zaglavlja datoteke koja sadrži most važne informacije o cijeloj datoteci, poput potpisa datoteke, veličine datoteke, kompatibilnosti 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 upravljačke stranice oštećene ili oštećene i Microsoft ih ne može prepoznati SQL Server, onda SQL Server pomislit će da cijela datoteka nije važeća primarna datoteka baze podataka i prijaviti ovu grešku.

Možete koristiti naš proizvod DataNumen SQL Recovery za oporavak podataka iz oštećene MDF datoteke i rješavanje ove pogreške.

Primjeri datoteka:

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

SQL Server verzija Oštećena MDF datoteka MDF datoteku popravio 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