duplicate record displayed in dbgrid

When I open up a table (interbase -> ttable) and display the data in a
it gives me duplicate rows when I use certain index. For every duplicate
displayed, a REAL record would be missing.
When I scroll the duplicate off the grid and scroll it back, the
rightful owner of the spot
shows up.
At first I thought it is a clich in infopower components. However, after
ttable, tdatasource and tdbgrid on the form and connecting them to the
table without a single line of code gives me exactly the same problem.
Any idea how to get about this bug?
This should have nothing to do with interbase. A query from interbase
correct result.
A simple tdataset->grid and database explorer display dupes.
I suspect that this is cause by a problem in either BDE or
TDataset/TTable implementation.
Did anyone encounter this problem before?
It would be appreciated if you can share your workarounds.
Thank you:)