>I have been given an application that has about 400,000 records in two tables and then a few more tables scattered around. It runs fairly quickly on one machine but if you put it out on the server and then the people around the state hit on the application (only about 5 people at a time max) it is incredibly slow.
>
>The client believes that Foxpro's native setup whenever doing a SQL statement is to pull the entire contents of the tables across the network into local memory and then do the SQL statement. Is this true? What can I do to make the SQL statement happen on the server and only the results be sent to the client?
>
>If you need more information (and I'm sure you probably do) please let me know. Thanks so much in advance for any assistance you can give.
Denise,
You will find some tips on query optimization (SQL - SELECT) in my FAQ #8109. You may need to get rid of some indices, and add others, to make the queries faster.
No, VFP doesn't (necessarily) pull the entire data over the network. However, if you use full Rushmore Optimization, in many cases the entire index gets tranferred. This can often be avoided with partial R.O.
HTH, Hilmar.
Difference in opinions hath cost many millions of lives: for instance, whether flesh be bread, or bread be flesh; whether whistling be a vice or a virtue; whether it be better to kiss a post, or throw it into the fire... (from Gulliver's Travels)