Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Foxpro dead...?
Message
De
17/12/1999 15:18:26
Walter Meester
HoogkarspelPays-Bas
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Titre:
Divers
Thread ID:
00303866
Message ID:
00305434
Vues:
46
John,

>>Again it depends on the situation. SQL is a set oriented language (at least it is suposed to be as it is positioned as an implementation of the relational model) where as xBase languages are primarely record oriented (though SQL is supported (sometimes in a limited way)).

>Yes, SQL Server is a set oriented. However, you can perform many row by row operations with server-side cursors, I do it all the time....

I'm aware of the cursors on SQL-server, but as far as I know this is not a ANSI 92 feature, meaning that it may be available to MS SQL-server but not in any other.

>>The differences between the two approaches are huge. Within the relational model there is no mechanism to browse trough the resultset (though there are limited ways within SQL) whereas xBase languages have a record pointer to point to the current record.
>>
>
>In a SQL-Server stored proc, I can get an intermediate result set, and scroll through it just like a do in a VFP DBF....

See above.

>>The differences between the two mechanisms become clear when using a hierarchy of tables linked to eachother with the SET RELATION command (thus suing the indexes efficiently) to get the data you want. On top of that you can filter tables within the hierarchy to provide a very powerfull way to reach the same goal as you try to do with JOINS in SQL. Difference here is that the Xbase solution of using a hierarchy is many times faster than using the SQL equivalent (yes i've tested this), and requires less memory (there is no query to be executed) to get the data you want, especially when the hierarchy involves lots of tables (thus many joins in SQL).
>
>I would like to see the notes and data of your tests....

I don't have them available instantly but i'll pas them whenever I have.

> In VFP, you scroll through records. In C/S scenariios, you don't do this. And if I need to, ADO provides a wonderful mechanism called a shaped recordset, which behaves like the set relation mechanisim in VFP.
>
>Did you do your tests on a WAN, or a LAN??? Big difference.....

Both. Using ADO to solve this problem is fine, but requires an extra layer. As I'm not that familiar with ADO, i don't know how this affects performance.

>>Another advantage of this solutions is that it's pretty a-synchronous. The relations are searched whenever you skip to another record and the records used in the whole hierarchy are only requested from the file when needed, especially when different tables are distributed on different sites over a WAN.
>
>And we don't have async processing with SQL-Server? Open a VFP table over a WAN, and watch how Async, excuse me SYNC it is.....

I did not say that. I did say that VFP performs A-synchronous executing also. If you open a large table (even over a WAN) it only buffers a small portion of the table, the rest is requested whenever neccesary. BTW how would you handle SQL queries where different tables from different database on different site (connected with a WAN) are involved ?, especially whgen these queries are ad-hoc and can't be pre-determined ?


>>That's why I love VFP. It can use both of technologies even if one table comes from a SQL - server, the other is stored on the local network and the third is accessed through a WAN.
>
>I love VFP too... However, SQL has some capabilities that you are not aware of....

You've got to be carefull here john, you would probable mean SQL-server 7. Since I don't own SQL server 7, you are probably right, but my graduation project was to ivestigate the differences between record oriented and set oriented databases, So i'm well aware of the features generally available within any SQL-server variant as well as the relational model theory.

Walter,
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform