Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Comportamiento de componentes MDO (https://www.clubdelphi.com/foros/showthread.php?t=49222)

peccatum 16-10-2007 16:55:31

Comportamiento de componentes MDO
 
Estimada comunidad Club Delphi:

Estoy utilizando componentes MDO para acceder a mi DB Firebird desde Delphi... el problema que tengo es que entre los metodos de las tablas MDO no encuentro "FindNearest", "FindKey","SetKey", y demás funciones para busquedas basadas en índices...

Cómo puedo implementar éstas búsquedas con éste componente?

Gracias!

Claudio

peccatum 16-10-2007 18:03:13

ya encontré una punta por donde encarar el problema: filtros (locate, lookup)...

disculpas =P

tefots 16-10-2007 21:41:39

tablas no
 
es mejor que no uses tablas , y mucho mejor aun que no uses locate.
lo mejor es usar mdoquerys , y buscar usando
select * from tabla where tabla.campo=xxx

si una tabla o un query tiene 1.000.000 de registros , al usar locate , mdo se trae todos los datos al lado del cliente , y sobre esos datos entonces se posiciona, saturas la red , y saturas al servidor sirviendo tantos datos innecesarios , y la busqueda se ralentiza mucho cuando la cantidad de registros es considerable.

si necesitas actualizar , buscar , refrescar , insertar , usa TMDODataset , si te acostumbras es lo mejor y lo mas óptimo , es una especie de query , que contiene las sentencias sql que tu le pongas para actualizar , buscar , insertar , refrescar , etc.


saludos.

peccatum 17-10-2007 01:47:34

Tefots, lo tendré muy en cuenta...

Recomiendas algúna bibliografía para aprender a usar bien el TMDODataset? con ejemplos y esas cosas...

Gracias!

peccatum 17-10-2007 07:02:35

No entiendo muy bien como se usa =(

en especial lo de las propiedades modifySQL, insertSQL y demás..

tefots 17-10-2007 09:09:08

para ver su funcionamiento lo mejor es que uses el editor de que lleva

le pinchas con el boton derecho y le das a dataset editor.
te sale como un asistente , donde le dices de que tabla y que campos quieres asi como el campo clave , luego le das a 'generate sql' , y el automaticamente te crea todas las sentencias 'insert', 'select' , 'update' , etc.

tu trabajas como si fuera un ttable , llamando a ttable.insert , ttable.edit , ttable.open , etc. , pero el internamente usa las sentencias sql que tenga en las propiedades selectsql , insertsql , updatesql , etc.
si lo sabes usar es bastante potente ya que te da mucho juego.

saludos.

peccatum 18-10-2007 20:08:42

ya me estoy acostumbrando a trabajar así...

gracias...


La franja horaria es GMT +2. Ahora son las 07:12:34.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi