Oire:

Kun liität .MDF-tietokannan SQL Server, näet seuraavan virhesanoman:

SQL Server havaitsi loogisen johdonmukaisuuteen perustuvan I / O-virheen: virheellinen tarkistussumma (odotettavissa: 0x2abc3894; todellinen: 0x2ebe208e). Se tapahtui sivun (1: 1) lukemisen yhteydessä tietokannan ID 12: ssa offsetilla 0x00000000002000 tiedostossa 'xxx.mdf'. Lisäviestejä SQL Server virheloki tai järjestelmän tapahtumaloki voivat antaa lisätietoja. Tämä on vakava virhetila, joka uhkaa tietokannan eheyttä ja joka on korjattava välittömästi. Suorita täydellinen tietokannan johdonmukaisuuden tarkistus (DBCC CHECKDB). Tämä virhe voi johtua monista tekijöistä; lisätietoja, katso SQL Server Kirjat verkossa. (Microsoft SQL Server, Virhe: 824)

missä 'xxx.mdf' on käytetyn MDF-tiedoston nimi.

Joskus .MDF-tietokanta voidaan liittää onnistuneesti. Kun kuitenkin yrität suorittaa SQL-käskyn, kuten

VALITSE * FROM [TestDB]. [Dbo]. [Test_table_1]

saat myös yllä olevan virhesanoman.

Näyttökuva virhesanomasta:

Tarkka selitys:

MDF-tiedostossa olevat tiedot tallennetaan sivuina, kukin sivu on 8 kt. Jokaisella sivulla on valinnainen tarkistussummakenttä.

If SQL Server havaitsee tarkistussumman arvot joillakin tietosivuilla virheellisiä, se ilmoittaa tästä virheestä.

Voit käyttää tuotetta DataNumen SQL Recovery palauttaa tiedot vioittuneesta MDF-tiedostosta ja ratkaista tämä virhe.

Esimerkkitiedostot:

Näyte virheellisistä MDF-tiedostoista, jotka aiheuttavat virheen:

SQL Server versio Viallinen MDF-tiedosto MDF-tiedoston korjannut DataNumen SQL Recovery
SQL Server 2005 Virhe4_1.mdf Virhe4_1_korjattu.mdf
SQL Server 2008 R2 Virhe4_2.mdf Virhe4_2_korjattu.mdf
SQL Server 2012 Virhe4_3.mdf Virhe4_3_korjattu.mdf
SQL Server 2014 Virhe4_4.mdf Virhe4_4_korjattu.mdf