ACC1x: Error Message When Attaching Btrieve TableLast reviewed: May 7, 1997Article ID: Q94420 |
The information in this article applies to:
SYMPTOMSWhen you try to attach a Btrieve table in Microsoft Access, you receive the following error message:
<tablename> is corrupted or isn't a Microsoft Access database. CAUSEWhen Microsoft Access attaches a Btrieve table, it compares information in the Xtrieve dictionary file (FILE.DDF) with information in the TBLNAME.DAT file. The most common reasons for the above error message are differences in index information.
RESOLUTIONRedefine the Btrieve index so that it is exactly the same length as the field it indexes.
STATUSThis problem does not occur in Microsoft Access version 1.1.
MORE INFORMATIONIn the Btrieve file format, the length of the index may not match the length of the field. This is a valid condition. The Xtrieve dictionary file (FILE.DDF) ignores these indexes, but Microsoft Access interprets them as invalid and returns the above error message. You can correct this problem by turning the invalid indexes into valid indexes. Use one of the following options to ensure that the length of the index and the length of the field are identical:
Example 1The TBLNAME.DAT file is defined with the following three columns:
Column name Field Length Index Length ------------------------------------------ Firstname 10 <= Combined length of Lastname 10 <= 20 characters Company 25Index1 is defined with a length of 20 characters, the combined length of the Firstname and Lastname fields. Resolution: Redefine the Btrieve index into one multiple-segment index, giving each segment a defined length of 10 characters.
Example 2The TBLNAME.DAT file is defined with the following three columns:
Column name Field Length Index Length ------------------------------------------ Firstname 10 4 characters Lastname 10 Company 25Index2 is defined with a length of four characters, shorter than the defined length of the Firstname field. Resolution: Redefine the Btrieve index on Firstname. Give it a 10-character length, matching the size of the Firstname field.
Example 3The TBLNAME.DAT file is defined with the following three columns:
Column name Field Length Index Length ------------------------------------------ Firstname 10 12 characters Lastname 10 Company 25Index3 is defined with a length of 12 characters, slightly longer than the defined length of the Firstname field. Resolution: Redefine the Btrieve index on Firstname. Give it a 10-character length, matching the size of the Firstname field.
Example 4The TBLNAME.DAT file is defined with the following two columns:
Column name Length -------------------- Firstname - 10 Lastname - 10 Company - 25Index4 is defined on a numeric byte range index. There is no index defined on any field in the table. Resolution: Remove the numeric byte range index completely, then redefine the index on an existing field. Be sure that the length of the index matches the length of the indexed field. Btrieve and Xtrieve are manufactured by Pervasive Software, a vendor independent of Microsoft; we make no warranty, implied or otherwise, regarding these products' performance or reliability. |
Keywords : IsmBtrv kb3rdparty kberrmsg
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |