Information générale
Titre:
Remote view speed w/ large data set, vs select to a cursor
I have a sql server table with 85K rows, a sales order line item file. Unfortunately for this application, it is difficult to come up with parameter conditions to limit the # of rows to retrieve - it makes more sense to download the whole file for the application I am working with.
In my testing, when I open the view with the use command, it takes about 3 minutes for the view to 'fully open'. What I mean by that is that when I look at the progress on the status bar, it doesn't show the full record count for 3 minutes. In other tests, if I attempt any type of io operations such as skip or replace, before the view is 'fully loaded', execution pauses on the line, forever, and/or gives me a connection is busy error.
How can I 'test if the view is ready for processing', without generating the connection busy error? For example I have code similar to the following
use v_sostrs
** need to put in some some kind of wait/loop test for view being ready
** or the same after a requery
go top
do while not eof()
REPLACE SOMEVALUE IN V_SOSTRS &&hangs or times out connection is busy
SKIP
enddo
If I execute lnresult=sqlexec(lnhandle, 'select * from sostrs','cursostrs')
It takes about 6 seconds to download 85K rows. Thereafter I can perform any io operation on the cursor that I want.
why is there such a dramatic difference here? Is it possible to make the cursor created with sqlexec(lnhandle, 'select * from sostrs','cursostrs')updatable?
Am I missing something simple or obvious, or not testing correctly?
Any suggestions would be appreciated
TIA
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement