RE:Como se comportan los controles ?
Nada, en Delphi el sistema de enlaze no es un desastre como en VB. Funciona tan bien, que basicamente no ha cambiado desde la version 1 (en VB lo cambian en cada version).
Sin embargo, es importante tener en cuenta que de todas maneras hay que usar buenas tecnicas de acceso a datos, especialmente si se esperan cantidades importantes de informacion:
1- Seleccionar solo los campos que se necesitan, filtrar y ordenarlos de una vez en la consulta si es posible
2- Usar cacheo de datos: Si por ejemplo hay una tabla ciudades que no cambia mucho, y esta en un servidor, puedes traerte TODOS los datos de una vez, usar un TClientDataSet y guardar en un archivo local en disco. De esa manera, en los combos e informes te ahorrarias la consultada de ciudades porque ya la tenes localmente
3- Usar Query By Forms: Una tecnica de navegacion bien rapida es esto. Por ejemplo, en un formulario cuando este en modo de ver datos, si cambian el codigo entonces consultar por ese codigo no mas y traer los datos.
Para dar navegacion atras, adelante usa (si el motor de BD tiene esto) SELECT * TOP1..ORDER BY CampoUnico ASC/DESC, es realmente MUY rapido!
3- Con TClientDataSet y DataSnap/MIDAS puedes hacer consultas TOP n, esto es, traigame de a N registros no mas que despues voy por los otros (ideal para grids)
Por lo demas, recuerda usar DataSet.Enable/DisableControls para procesos importantes (esto deshabilita/habilita el enlace y evita que al hacer un recorrido se refresquen innecesariamente los controles)
Por lo demas, la demora real esta en la cantidad de datos que consultes y no tanto en el enlace