อาการ:

เมื่อพยายามแนบฐานข้อมูล. MDF ใน SQL Serverคุณจะเห็นข้อความแสดงข้อผิดพลาดต่อไปนี้:

ไม่สามารถดึงข้อมูลสำหรับคำขอนี้ (Microsoft.SqlServer.Management.Sdk.Sfc)

เกิดข้อยกเว้นขณะเรียกใช้คำสั่ง Transact-SQL หรือชุดงาน (Microsoft.SqlServer.ConnectionInfo)

xxx.mdf ไม่ใช่ไฟล์ฐานข้อมูลหลัก (ไมโครซอฟท์ SQL Server, ข้อผิดพลาด: 5171)

โดยที่ 'xxx.mdf คือชื่อของไฟล์ MDF ที่จะแนบ

ภาพหน้าจอของข้อความแสดงข้อผิดพลาด:

ภาพหน้าจอแสดงข้อผิดพลาด "ไม่ใช่ไฟล์ฐานข้อมูลหลัก"

คำอธิบายที่แม่นยำ:

ข้อมูลในไฟล์ MDF จะถูกจัดเก็บเป็นเพจแต่ละเพจมีขนาด 8KB หน้าแรกเรียกว่าหน้าส่วนหัวของไฟล์ซึ่งมีมost ข้อมูลที่สำคัญเกี่ยวกับไฟล์ทั้งหมดเช่นลายเซ็นไฟล์ขนาดไฟล์ความเข้ากันได้ ฯลฯ หน้าที่เหลือยังมีข้อมูลที่สำคัญซึ่งรวมถึงข้อมูลการจัดสรรเพจและข้อมูลจริง

หากหน้าส่วนหัวของไฟล์ 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