Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Large tables
Message
 
À
30/06/2005 09:31:12
Mike Yearwood
Toronto, Ontario, Canada
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Titre:
Versions des environnements
Visual FoxPro:
VFP 9
Divers
Thread ID:
01027560
Message ID:
01027713
Vues:
22
I learn something new every day, thanks.


>>Well, my understanding is that if you are using VFP tables the clinet computer has to process de SQL command that you send, that is all 2000000 need to travel across the network to be evaluated at the client computer in order to give you a result set even if that set is only one record.
>>
>>If you want only one record to travel across the Net you need client-server. That way when you sen a SQL command the server will process it and return only one record.
>
>That is unfortunately an all too common misconception. Some of the index tag data involved in the query must be transmitted. This index tag data is examined and a bitmap is produced. This bitmap is used to extract the records and then (so I've heard) the bitmap is refined by looking at the extracted records (or record in this case) to see if it/they still matches the conditions. That probably is not as efficient as SQL Server, but it is much better than sending all the records over the wire.
>
>The tables are opened - and some data is buffered even before the query runs, but the entire table is not transmitted unless you SELECT * FROM TABLE without any indexes or conditions.
>
>>
>>I suggest that you move the table to a SQL or MSDE and let the server do the selecting for VFP.
>>
>>BDeHoyos
>>
>>
>>
>>
>>
>>
>>>We have two sites that are some 10 miles apart, and these sites are connected via a T1 line. The server resides at one of the sites. On the server, there is a table called patient.dbf that has over 2 million records in it, with about 50 fields per record. A user only needs to see one record at a time.
>>>
>>>When the table is opened with the USE command at the same site as the server resides at (ie does not send data across the T1), the table opens instantly. When it is opened with USE at the site remote from the actual server machine, it opens painfully slowly.
>>>
>>>If we use a SELECT-SQL command to select just one record from the table at either site, the entire table seems to be opened in the current work area in order to execute the selection. That's not a problem at the 'local' site, but again, creates an incredible drag when executed at the remote site.
>>>
>>>How does one 'select' just one record from a very large table without actually causing VFP to open the entire table in its own workspace?
>>>
>>>C
B.D.H.
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform