How to recover SQL database when generating an errors 823?

sql2Are you getting error while accessing your Microsoft SQL Server database? Are you facing issue while performing Input or Output operation in your database? The problem generally occurs due to the conflicts of Windows API that is used by SQL Server or sometime due to SQL Server corruption.  This leaves your data in unusable state and even leads to data loss. SQL error 823 occurs when the read of page fails at operating system layer.  The main reason behind they error is due to overloaded storage, faulty drivers, bad hard disk, incorrectly configured disk subsystem, etc. You can run across the following error message similar to Windows Application Event Log or Microsoft SQL Server ERRORLOG:

Error: 823

The operating system display error 38(Reached file end.) to SQL Server during read at offset 0x000000a72c0000 in file ‘C:\Program Files\Microsoft SQL Server\MSSQL10.SQL2008\MSSQL\DATA\my_db.mdf’.

This is a very severe system-level error that can make you database inaccessible. So it is very important to resolve this error. When a program face the above error during modifying the data and the connected SQL server gets closed.

Root cause of this error message:

It is very important to know the reason behind this problem so that you can handle the situation in a proper way. It caused by Windows APIs that is used by the Microsoft SQL Server. The APIs like WriteFile, WriteFileGather, ReadFile, and ReadFileScatter is used to perform the Input/Output operations. On completion of Input/Output operations SQL Server examines the error connected with API calls. But when API calls disloyal with OS error you get this behavior of SQL Server. The problem in SQL can also occur due to sever corruption. There are many reasons behind the corruption of database such as virus infection is the most common reason behind the corruption in any database.


To resolve the above given error message you need to follow below given steps to recover SQL server database from corruption situation:

  • Review the infer pages table.
  • Check out the database consistency.
  • Review the Windows Application Event Log to search operating system and file system related errors.
  • Restore the database from the current backup.
downloadnow buynow learn-more-button-orange

But what if the above step fails to resolve this issue no need to worry you still have the way to fix this issue. This problem can be solved with the help of third party repair tool. You can use MS SQL Repair Tool that ensure absolute recovery through deep scanning the database by the help of advanced scanning algorithms. It performs some simple steps to recover the database without any damage. It is especially designed to repair and restore the corrupted, damaged or inaccessible database. It can easily retrieves data such as tables, macros, reports, forms, stored procedures, triggers, constraints, default constraints, and other SQL Server database objects. It offers safe and easy recovery with its impel user interface that doesn’t want the person to have  any technical skill in order to operate it.

Steps to recover SQL database when generating an errors

Step 1: Stop the running MS SQL server. Perform the repair task on the copy of the corrupt database, click on the ‘OK’ button to continue.
Step 2: Click on the ‘Select database’ button and select the path of corrupt MDF file. You can also search your corrupt database file by using ‘Look in’ and ‘File Type’ button. click on the ‘Scan file‘ button to start the repairing process.
Step 3: The recoverable objects of database are listed in a tree view on the left side of the window. You can see the preview by clicking on the object.
Step 4: You can also search for a particular object by using ‘Find item’ option. Write the object name or a part of the object name in the given text box, check on ‘Match case‘ or ‘Match whole word‘ and then click find next button.
Step 5: Click on the ‘Start Repair’ icon. A dialog box will appear fill the SQL server instance name. To save the repaired file in the desired location click on the brows button and give the path, else the repaired file will be saved in the ‘Default SQL Location’. Click on the ‘OK’ button.