• Data file can be repaired by DBCC repair command but there is risk of data loss so first take the database backup and also record all table count in excel file for compare the data after repair.

    Step.1 Backup database.

    Step.2 Get all tables record count.

    Step.3 SET database in single user mode.

    ALTER DATABASE DB_NAME SET SINGLE_USER WITH ROLLBACK IMMEDIATE

    Step.4 RUN DBCC command-

    DBCC CHECKDB(DB_NAME,REPAIR_ALLOW_DATA_LOSS)

    Step.5 Get again all tables record count and compare with old record count.

    SQL Query to get table record count-

    DECLARE @T_Name VARCHAR(250)

    DECLARE @COUNT INT

    DECLARE @SQL VARCHAR(2000)

    CREATE TABLE #T_Info(ID INT IDENTITY(1,1),T_Name VARCHAR(200),D_Count INT)

    DECLARE TINFO_CUR CURSOR FOR

    SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES

    WHERE TABLE_TYPE='BASE TABLE'

    OPEN TINFO_CUR

    FETCH NEXT FROM TINFO_CUR INTO @T_Name

    WHILE @@FETCH_STATUS =0

    BEGIN

    SET @SQL='INSERT INTO #T_Info(T_Name,D_Count) SELECT '''+@T_Name+''',COUNT(*) FROM '+@T_Name+''

    EXECUTE (@SQL)

    FETCH NEXT FROM TINFO_CUR INTO @T_Name

    END

    CLOSE TINFO_CUR

    DEALLOCATE TINFO_CUR

    SELECT * FROM #T_Info ORDER BY T_NAME

    DROP TABLE #T_Info