Síntoma:

Ao tentar conectar unha base de datos .MDF en SQL Server, ve a seguinte mensaxe de erro:

Fallou a conexión da base de datos para o servidor 'xxx'. (Microsoft.SqlServer.Smo)

Produciuse unha excepción ao executar unha instrución ou lote Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)

A cabeceira do ficheiro 'xxx.mdf' non é unha cabeceira de ficheiro de base de datos válida. A propiedade FILE SIZE é incorrecta. (Micosoft SQL Server, Erro: 5172)

onde 'xxx.mdf' é o nome do ficheiro MDF que se adxuntará.

Captura de pantalla da mensaxe de erro:

Explicación precisa:

Os datos do ficheiro MDF almacénanse como páxinas, cada páxina ten 8 KB. A primeira páxina chámase páxina de cabeceira de ficheiro, que contén o most información importante sobre todo o ficheiro, como a sinatura do ficheiro, o tamaño do ficheiro, a compatibilidade, etc.

Se a páxina de cabeceira do ficheiro MDF está danada ou corrompida e non pode ser recoñecida por Microsoft SQL Server, Entón SQL Server pensará que a cabeceira non é válida e informará deste erro.

Podes usar o noso produto DataNumen SQL Recovery para recuperar os datos do ficheiro MDF corrupto e resolver este erro.

Ficheiros de mostra:

Mostra ficheiros MDF corruptos que causarán o erro:

SQL Server versión Ficheiro MDF corrupto Arquivo MDF corrixido por DataNumen SQL Recovery
SQL Server 2005 Erro2_1.mdf Erro2_1_fixed.mdf
SQL Server 2008 R2 Erro2_2.mdf Erro2_2_fixed.mdf
SQL Server 2012 Erro2_3.mdf Erro2_3_fixed.mdf
SQL Server 2014 Erro2_4.mdf Erro2_4_fixed.mdf