Additional
dbCAP
AnyDAC
ThinDAC
NCOCI8
Topic: Break
Break
Posted: 2004/05/13 08:00
 
I wrote an applicanion,and some querys is runing long time. Somtimes I wish to break it. I can do that in that case I set the TOCIDatbasae.NonBlockingMode=True, but in this case my querys slow down. I can incremented the speed when I Incremented TICODatabase.DefaultFetchParams values (rowsetsize, piecebuffsize etc), but those querys that returns much rows cause memory access error. Can I solve this problem?
RE: Break
Posted: 2004/05/13 12:00
 
AFAIK NonBlockingMode doesn't affect query execution time. To optimize speed, check your query plan.

Also note, that query execution time may vary from time to time depending on server load.
Running query for the first time is often slower then subsequent runs of the same query because of hard parse and physical reads that usually turns into soft parse and logical reads after query first run.

Objective criteriums of query optimization are execution plan and value of consistent gets statistics (smaller is better). Execution time is very indirect criterium.

Rowsetsize and Piecebuffersize parameters affect fetch process, not execution. Fetch time optimization depends very much on how you use dataset. If you cycle through it to gather some agrregated info, set unidirectional=true, maybe it helps. If you display it in some grid, I'm affraid there's not much you can do.