Hola.
Una forma de evitar eso es utilizando como fuente de datos para tu grid un cursor. La consulta SQL SELECT sería de esta forma:
SELECT * FROM TuTabla INTO CURSOR CursorVar
Y en el grid iría algo como esto:
TuGrid.RecordSource=CursorVar
El cursor vendría siendo algo así como una "matriz" donde se almacenan los resultados de tu consulta.
Espero que te sirva de algo...
DiabloRojo.