Microsoft database loses records

A bug found in Microsoft Access by a developer last week--and repeatedly reproduced since then--affects the way database records are changed.

Mike Ricciuti Staff writer, CNET News
Mike Ricciuti joined CNET in 1996. He is now CNET News' Boston-based executive editor and east coast bureau chief, serving as department editor for business technology and software covered by CNET News, Reviews, and Download.com. E-mail Mike.
Mike Ricciuti
3 min read
Developers are furious over a flaw discovered in Microsoft's Access database that could cause a loss of data and scrambled records.

The problem, discovered by a developer last week and since reproduced by many users, affects the way Access handles changes to database records. The flaw is particularly thorny because it can corrupt database records without users realizing that anything wrong has happened.

Developers fear that the bug could require reprogramming to applications already in use and that existing databases could be corrupted. Even worse, the problem could result in improper billing, diagnoses, or other potentially disastrous legal issues, according to developers.

A Microsoft executive today confirmed the existence of the bug and said the company has devised a temporary solution while it determines whether the problem affects multiple versions of the popular database program. The company will also post a bulletin, referred to by Microsoft as a "Knowledge Base article," to its Web site later today detailing the bug.

Newsgroup postings indicate that the bug causes edits made on one Access database record to be saved to another. In other words, in a typical business application, the bug could cause information associated with a particular customer or medical patient to be attached to the wrong account.

Access is used as the underlying database in many business applications and is particularly popular with consultants and systems integrators building applications for small businesses, such as doctors' offices and insurance agencies.

The Access bug has been the subject of more than 100 postings to the "comp.databases.ms-access" Internet newsgroup since last Wednesday. Opinions on the bug's potential effects vary widely in those postings.

"This is by far the most heinous and destructive bug I have ever seen," a developer said one posting. Others warned that the flaw may easily go undetected in many applications and have openly questioned whether Access should be use used for commercial applications until it is repaired.

"Can you afford to trust your data to it [Access], if the wrong client gets your address, your donation, your invoice, your order, your merge letter?" one developer asked rhetorically.

The problem can be easily re-created, according to one Access developer who has posted step-by-step instructions to demonstrate the problem.

John Duncan, a Microsoft Office product manager, said the company became aware of the problem several days ago and has come up with a work-around. The company is also considering issuing a patch to Access 97, but no final decision has been made.

Users report that the bug affects Access versions 2.0, 95, and 97. However, Duncan said Microsoft has been able to reproduce the bug only in Access 97. He also declined to say how many Access users have contacted the company to report the flaw.

Duncan said the problem occurs under a specific scenario. First, a person must be working with a long set of records in an Access form. Users report that the flaw affects forms displaying more than 200 records.

Duncan would not confirm the exact number of records. For the flaw to occur, users must delete a record from the record set, use Access's Combo Box (a feature intended to ease access to database records) to edit another record, and then save the changes. Access applies the changes to the record just before the intended target of the change, Duncan said.

"If a user were to delete a record at the beginning of a record set and then edit a later record without using the Combo Box, the error probably will not occur," Duncan said.

He said the workaround is a simple process. First, users need to go into Access's Design View and right-click on Combo Box, which displays a dialog box. Then, users need to type one line (me.requery) into the dialog box and save it.

Access 97 is sold as part of Microsoft's Office 97 desktop application package, and is used by millions of people worldwide. Overall, Office Professional 97, of which Access is a component, is the third best-selling software title in the United States, according to market researcher PC Data.