SQL 6.5 Fatal Error 605

Posted on 2009-04-30
Medium Priority
Last Modified: 2012-05-06
I am running an application that uses a MSSQL 6.5 DB.  It has been running fine for years.  However, a couple of weeks ago, we received a fatal error 605.  It stated the error was in the 'transaction' table.  Unfortunately, we did not attempt to correct the problem immediately after the error appeared, so our backups will not help in this case.  I also attempted to run the DBCC CHECKTABLE REPAIR_ALLOW_DATA_LOSS command before realizing that it will only work in MSSQL 7.0 +.  

So, I need to know the safest (and easiest) method to correct the 605 error on the affected table.  We are not SQL experts in any stretch of the imagination, so we will need as much as can be provided in snippets or step-by-step directions.  

Thank you in advance for the assistance!
Question by:tso11
  • 3
  • 2
LVL 25

Expert Comment

ID: 24272984
Try running the DBCC CHECKTABLE command without any options and post the output here..

You could also lookup the TRANSACT SQL help in the Query Tool to check the options that are supported in SQL Server 6.5 (not sure as its been a long long while since I've worked with 6.5)..

You could also try doing a select * into  a different table, though I'd suspect that won't work if there are serious problems with your 'transaction' table ..

Author Comment

ID: 24275186
Here are the results of DBCC CHECKTABLE ('transactions')

Checking transactions
The total number of data pages in this table is 191472.
Table has 1202252 data rows.
Msg 605, Level 21, State 1
Attempt to fetch logical page 360464 in database 'mainx' belongs to object  'rpt_tran_totals', not to object 'transactions'.
DBCC execution completed.  If DBCC printed error messages, see your System Administrator.  

Also, while in the Enterprise Manager, I noticed that the system is showing no available data space for the database.  With that being said, it has said that in the past without it being much of an issue.  That is probably best held for another EE question.  

Anyway, I hope the output helps.  Thanks!

Author Comment

ID: 24275502
By the way, I did check the TRANSACT SQL HELP.  I looked through the possible options, but none of them would seem to help in this situation.  Through web searches I saw someone recommended using a DBCC FIX_AL, but I am hesitant to do so if it could cause other problems.  I am not sure if that is the case.  Another recommendation is using a BCP Out BCP In, but I don't have enough SQL knowledge to use that.  I would need a lot of help with that.  

I am raising the points as it would seem this is a bit more complicated.  Hopefully, there is still an easier solution!
NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!


Expert Comment

ID: 24281939
The error could be on the index.  Can you still access the data with a simple SELECT * FROM [Tablename]?

Author Comment

ID: 24282438
Yes.  I am able to pull data with a SELECT * FROM transactions command.  

Accepted Solution

FYD earned 2000 total points
ID: 24282983
The first thing I would do is copy the data into a new table.  Make sure you copy all indexes too.  Then I would delete the table.  Create a new table.  insert the data.  create any indexes you had.  I would also run DBCC CHECKDB (Transact-SQL) on the database to see if any other issues may be there.

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows how to get a list of available printers for display in a drop-down list, and then to use the selected printer to print an Access report or a Word document filled with Access data, using different syntax as needed for working with …
In this article, I’ll look at how you can use a backup to start a secondary instance for MongoDB.
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…
Suggested Courses

840 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question