Gejala:

Saat mencoba melampirkan database .MDF di SQL Server, Anda melihat pesan kesalahan berikut:

Gagal mengambil data untuk permintaan ini. (Microsoft.SqlServer.Management.Sdk.Sfc)

Pengecualian terjadi saat menjalankan pernyataan atau batch Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)

xxx.mdf bukan file database utama. (Microsoft SQL Server, Kesalahan: 5171)

dengan 'xxx.mdf adalah nama file MDF yang akan dilampirkan.

Tangkapan layar pesan kesalahan:

Tangkapan layar kesalahan "Bukan File Basis Data Utama"

Penjelasan Tepat:

Data dalam file MDF disimpan sebagai halaman, setiap halaman berukuran 8KB. Halaman pertama disebut halaman file header, yang berisi file most informasi penting tentang keseluruhan file, seperti tanda tangan file, ukuran file, kompatibilitas, dll. Halaman-halaman lainnya juga berisi informasi penting, termasuk informasi alokasi halaman serta data sebenarnya.

Jika halaman header file MDF, atau halaman manajemen penting lainnya rusak atau rusak, dan tidak dapat dikenali oleh Microsoft SQL Server, kemudian SQL Server akan menganggap seluruh file bukan file database utama yang valid dan melaporkan kesalahan ini.

Anda dapat menggunakan produk kami DataNumen SQL Recovery untuk memulihkan data dari file MDF yang rusak dan mengatasi kesalahan ini.

File Contoh:

Contoh file MDF yang rusak yang akan menyebabkan kesalahan:

SQL Server versi File MDF rusak File MDF diperbaiki oleh DataNumen SQL Recovery
SQL Server 2005 Kesalahan1_1.mdf Kesalahan1_1_fixed.mdf
SQL Server 2008 R2 Kesalahan1_2.mdf Kesalahan1_2_fixed.mdf
SQL Server 2012 Kesalahan1_3.mdf Kesalahan1_3_fixed.mdf
SQL Server 2014 Kesalahan1_4.mdf Kesalahan1_4_fixed.mdf