table is not indexed


I have problem in mysql TEMPORARY table. i am creating a table and indexes for a temporary table through program. and after that i am opening the table through table component (in Delphi)and in the table component i have specified the indexname property with proper index name,at that time i get an error as ‘Table is not indexed’. if i don’t specify the index name in the property then i don’t get any error.

Can somebody help me in this regard? i don’t have problem with normal table in mysql, only i have problems with temporary table.

to fix this problem what should i do? should i need to do something in coding or something while creating index or temporary table? kindly help me in this regard


If you run the same query from mysql commandline, do you see the same problem?

What connectivity library are you using for Delphi? It may be that your version of ODBC or MySQL connector is not fully aware of indices on temporary tables


Thanks for your reponse.

Actually i am using BDE–>ODBC–>MYSql connectivity

if i use like above connectivity then i get ‘Table is not indexed’ error.

If use ADO–>ODBC—>MySql Connectivity or MySqlDAC–>MySql connectivity, then, even when i specify wrong index name, i can open table component.

i am using MySql ODBC 3.51 driver.

If i run in mysql query browser i don’t get any problem, because i am using any index in query. only when i use in delphi - BDE table component with index name then only i get this error.

Hope i have cleared your questions, waiting for your valuable solutions.


The error appears to be coming directly from BDE, rather than ODBC or even MySQL.

How are you trying to open the BDE query? Theres a few reasons BDE might return this error, although Im not sure whether it simply cant detect indices on temporary tables.
I used BDE for a number of years (around 1994 time though), and dont remember seeing this problem on temporary tables.

Are you trying to open a Live query perhaps ?
Or maybe BDE is expecting to find a unique key, so it can cursor through the results, and the only index on the temp table is not a unique one?