Microsoft KB Archive/111046

= "Cannot Define Primary" in Paradox Table =

Article ID: 111046

Article Last Modified on 8/15/2005

-

APPLIES TO


 * Microsoft Excel 95 Standard Edition
 * Microsoft Excel 5.0 Standard Edition
 * Microsoft Query 2000

-



This article was previously published under Q111046



SUMMARY
In Microsoft Query, when you create an index for an existing Paradox table, you may receive the following error message:

Cannot define primary



CAUSE
This error message appears if the table you are creating an index for contains data. You cannot create a unique index for a Paradox table that contains data.



WORKAROUND
To create an index on a field in a Paradox table, do either of the following:


 * Open the table in Paradox and assign a primary key to one of the fields in your table. Until you define a primary key in the table, you cannot edit the data in the table in Microsoft Query. -or-


 * To create a new Paradox table from the existing table, and create an index for the new table in Microsoft Query, do the following:


 * From the File menu, choose New Query. From the Available Data Sources list, select Paradox Files and choose Use.
 * From the Table Name list, select the table for which you want to add an index, and choose Add. Choose Close.
 * From the Field List, drag the asterisk to the data pane.
 * From the File menu, choose Save As. From the Save As list, select Paradox Files and choose Save. In the File Name box, type the name of your new table. Select the Save Indexes check box, and choose OK.
 * Choose Yes to create a unique index in the table.
 * In the Index Name box, type the name of the table you saved in step 4 (the name of the primary index must match the name of the table). From the Index Fields list, select the name of the field you want to index. Choose Add.

These steps will create a new table with the fields and data contained in the original Paradox table.



MORE INFORMATION
In Microsoft Query, when you create an index on a field in a Paradox table that does not contain any data, the name of the index you are creating must match the name of the table. Additionally, you can only create an index on the first field in the table. If you create an index on a field other than the first field in the table, you receive the following error message

Illegal index definition

and the index is not created.

You cannot edit data in a Paradox table in Microsoft Query unless a primary key has been defined in the table. Because in Microsoft Query you cannot create an index on a field in a Paradox table that contains data, you must add a primary key to the table in Paradox in order to edit the data in the table in Microsoft Query. When you attempt to edit a table in Microsoft Query that does not have a primary key defined for one of the fields, you will receive the following error message

Can't open unkeyed Paradox table.

Unable to open table: TABLENAME.

where TABLENAME is the name of the table you are editing.

The Paradox products included here are manufactured by Borland, Inc., vendors independent of Microsoft; we make no warranty, implied or otherwise, regarding these products' performance or reliability.

