Página 1 de 1

TMariaDBDataSource...OnExecute ???

Publicado: Jue May 25, 2017 6:56 pm
por XeviCOMAS
Pues eso... para pulir un poco i mostrar algo de información o un ProgressBar...

Como puedo hacer que mientras se está ejecutando un UPDATE, INSERT, DELETE... pueda ejecutar una función, o algo parecido a cuando se generan índices en una DBF... EVAL...EVERY

INDEX ON Field->B + Field->FACTURA + DtoS(Field->DATAFAC) TAG "FACTU01" EVAL {|| xProg( oProgressBar, 8, 0 ) } EVERY 10


Un Saludo,
Xevi.

Re: TMariaDBDataSource...OnExecute ???

Publicado: Jue May 25, 2017 9:11 pm
por jfgimenez
Xevi,

hasta donde yo sé, no se puede. Las sentencias las ejecuta el servidor, y hasta que éste responda no puedes hacer nada.

Re: TMariaDBDataSource...OnExecute ???

Publicado: Jue May 25, 2017 9:30 pm
por XeviCOMAS
José,

de alguna manera, seguro que se debe poder, jejeje... Heidi tiene una ProgessBar y un contador de registros afectados que se refresca a medida que éstos se añaden o modifican.

En fin, Eso ya seria pues para pulir. Si se puede, mejor, sinó :cry:

Un Saludo,
Xevi.

Re: TMariaDBDataSource...OnExecute ???

Publicado: Jue May 25, 2017 9:41 pm
por jfgimenez
Xevi,

yo utilizo HeidiSql casi a diario, y no he visto lo que comentas.

Ahora bien, hasy casos en los que sí que hay una progressbar. P.ej., cuando importas una copia de seguridad o un volcado de otra base de datos. Pero esto es así porque, en realidad, es un conjunto de muchas sentencias separadas por punto y coma. No es una sola sentencia. Y lo que hace HeidiSql es trocear ese volcado ejecutando por separado cada sentencia y mostrando el progreso.

Por otro lado, quizás utilice el comando EXPLAIN o algo similar para ver el progreso, pero entonces la sentencia se ejecutará muchísimo más lenta.

Re: TMariaDBDataSource...OnExecute ???

Publicado: Jue May 25, 2017 10:07 pm
por XeviCOMAS
José,

Gracias por tus aclaraciones.

Un Saludo,
Xevi.