симптом:

При попытке подключить базу данных .MDF в SQL Server, вы увидите следующее сообщение об ошибке:

Не удалось получить данные для этого запроса. (Microsoft.SqlServer.Management.Sdk.Sfc)

Исключение при выполнении инструкции или пакета Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)

xxx.mdf не является основным файлом базы данных. (Майкрософт SQL Server, Ошибка: 5171)

где 'xxx.mdf - имя прикрепляемого MDF-файла.

Скриншот сообщения об ошибке:

Скриншот ошибки «Не основной файл базы данных»

Точное объяснение:

Данные в файле MDF хранятся в виде страниц, каждая страница имеет размер 8 КБ. Первая страница называется страницей заголовка файла, которая содержит most важная информация обо всем файле, такая как подпись файла, размер файла, совместимость и т. д. Остальные страницы также содержат важную информацию, включая информацию о размещении страниц, а также фактические данные.

Если страница заголовка файла MDF или другие важные страницы управления повреждены или повреждены и не могут быть распознаны Microsoft SQL Server, то SQL Server подумает, что весь файл не является допустимым файлом первичной базы данных, и сообщит об этой ошибке.

Вы можете использовать наш продукт DataNumen SQL Recovery восстановить данные из поврежденного файла MDF и устранить эту ошибку.

Примеры файлов:

Примеры поврежденных файлов MDF, которые вызовут ошибку:

SQL Server версия Поврежденный MDF-файл Файл MDF исправлен DataNumen SQL Recovery
SQL Server 2005 Ошибка1_1.mdf Ошибка1_1_fixed.mdf
SQL Server 2008 R2 Ошибка1_2.mdf Ошибка1_2_fixed.mdf
SQL Server 2012 Ошибка1_3.mdf Ошибка1_3_fixed.mdf
SQL Server 2014 Ошибка1_4.mdf Ошибка1_4_fixed.mdf