Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Cuando Usar FieldByname (https://www.clubdelphi.com/foros/showthread.php?t=44521)

IcebergDelphi 08-06-2007 02:08:39

Cuando Usar FieldByname
 
Hola amigos llevo 5 años programando en Delphi y Firebird pero de un momento a otro me surgio una duda cuando debemos usar Fielbyname?

Yo lo uso , pero no se si esto da mas velocidad al cargar un modulo de datos con varias tablas y no usar el Fieldseditor que trae cada tabla, para cargar los campos al mismo.

Si Ponemos ellos campos en el Fieldseditor es mas pesada la abertura de una tabla en tiempo de ejecucion?

Si usamos FieldByName es mas rapida la abertura de una Tabla en tiempo de ejecucion?


Saludos y gracias.

luisgutierrezb 08-06-2007 03:06:55

segun recuerdo, no estoy seguro, que los campos persistentes, se crean ya sea en tiempo de diseño con el fieldseditor o en tiempo de ejecucion al ejecutar una consulta dinamica, y como de todos modos se crean, pues no creo que haya diferencia entre hacerlo en tiempo de diseño o en ejecucion que se hgan automaticos

xander 08-06-2007 03:16:25

FieldByName, es un metodo que debe devolver un puntero a un objeto que administra un determinado campo, a partir solo del nombre de ese campo... así que el metodo debe buscar uno a uno dentro de los campos del dataset si alguno se llama como el que buscamos, lo peor que puede pasar es que el que buscamos sea el último de un dataset de muchos campos y se hayan hecho muchas comparaciones para poder encontrarlo.

Si ya conoces el puntero al campo, es decir que usas campos persistentes pues usalo directamente... definitivamente algo ganas al usar:

TablaCampo.AsString

sobre:

Tabla.FieldByName('Campo').AsString

Casimiro Notevi 08-06-2007 09:34:35

Muy bien explicado, xander. No es necesario 'buscar' si tenemos el puntero a lo que 'buscamos'.

IcebergDelphi 08-06-2007 16:44:40

Gracias Amigos
 
Gracias amigos de todas formas uso el FieldByanem

Tabla.FieldByname('NombreCampo').as lo que sea

Pero seguire probando cual me da mas velocidad al abrir o consultar algo.

Saludos y gracias si quieren seguir opinando adelante. es bueno saber sismpre mas dia a dia.


La franja horaria es GMT +2. Ahora son las 13:34:46.

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