"Table Level Changed" error

I'm trying to do a query using Local SQL on a DBase table

'Select * from company.dbf where dns=true order by comp_name'

the query succeeds without the 'order by' clause, but with it, the BDE
does an exception "Table Level Changed".  I find no reference to this
error message anywhere.

I have a slight feeling it may be caused by the table not having a
index defined.  I'll try that in a little while, but is there any
other reason I would get this error?