Símptoma:

Quan intenteu adjuntar una base de dades .MDF a SQL Server, veuràs el missatge d'error següent:

No s'han pogut recuperar les dades d'aquesta sol·licitud. (Microsoft.SqlServer.Management.Sdk.Sfc)

S'ha produït una excepció mentre s'executava una sentència o un lot de Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)

xxx.mdf no és un fitxer de base de dades principal. (Microsoft SQL Server, Error: 5171)

on 'xxx.mdf és el nom del fitxer MDF que s'ha d'adjuntar.

Captura de pantalla del missatge d'error:

Captura de pantalla de l'error "No és un fitxer de base de dades principal"

Explicació precisa:

Les dades del fitxer MDF s'emmagatzemen com a pàgines, cada pàgina és de 8 KB. La primera pàgina s'anomena pàgina de capçalera del fitxer, que conté el most informació important sobre tot el fitxer, com ara la signatura del fitxer, la mida del fitxer, la compatibilitat, etc. Les pàgines restants també contenen la informació important, inclosa la informació d'assignació de pàgines, així com les dades reals.

Si la pàgina de capçalera del fitxer MDF o altres pàgines de gestió importants estan danyades o malmeses i Microsoft no les pot reconèixer SQL Server, A continuació, SQL Server pensarà que tot el fitxer no és un fitxer de base de dades principal vàlid i informarà d'aquest error.

Podeu utilitzar el nostre producte DataNumen SQL Recovery per recuperar les dades del fitxer MDF corrupte i resoldre aquest error.

Fitxers de mostra:

Mostra fitxers MDF corruptes que provocaran l'error:

SQL Server versió Fitxer MDF danyat Fitxer MDF arreglat per DataNumen SQL Recovery
SQL Server 2005 Error1_1.mdf Error1_1_fixed.mdf
SQL Server 2008 R2 Error1_2.mdf Error1_2_fixed.mdf
SQL Server 2012 Error1_3.mdf Error1_3_fixed.mdf
SQL Server 2014 Error1_4.mdf Error1_4_fixed.mdf