Tal y como dice Paquito, __dBTrans() es un misil. No hay comparación. Hice la siguiente prueba, intercalada entre código ya existente para aprovechar una tabla de las gordas y con muchos registros.
[code=fw:38zxdo3x][/code:38zxdo3x]
En un Pentium Dual de 1.73 Ghz (un portatil de hace 10 años) con un disco SATA I de 500Gb traspasa 50K reg con 54 campos incluyendo memos en 2.58 segundos. Si limito la cantidad de campos a los 4 primeros, el tiempo baja a 1.31 segundos. Imbatible.
Como sucede con muchas funciones, hay poca documentación de __dBTrans() (¿O soy yo que no me entero?) pero rebuscando por ahí en algún mensaje de las listas de Harbour se explica que nDstArea debe ser el número de la WorkArea destino, aFieldsStru puede ser o bien un array con los nombres de los campos, pero tambien acepta arrays de estructura completa como los que devuelve dBStruct(). El resto de los parámetros son los mismos que en los comandos clásicos.
↧