My experience with MS Access, querying large amounts of data via ODBC, is
that pass-through queries (carried out by the server) are usually the best
way to go. Local queries on linked tables will work fine for simple queries
(small number of rows returned, with a simple WHERE clause), but any kind of
large result set, or especially a complex set of WHERE criteria, slows my PC
to a crawl for 30-60 minutes or more. This is with a PII 350Mhz, 128 Mg
RAM. Same happened (only worse) with my previous PC. I've had to kill
Access plenty of times just to get out of these situations, because I just
couldn't work while it was going on.
I don't have any insight into the processes involved, this is just my
observation on many occasions...
> -----Original Message-----
> From: Nicolas Huillard [SMTP:nhuillard@ghs.fr]
> Sent: Friday, June 02, 2000 5:13 AM
> To: 'Mihai Gheorghiu'; pgsql-interfaces@postgresql.org
> Subject: [INTERFACES] RE: ODBC driver
>
> The best way to see how it works is to look at the query log in the
> postgres back-end. My bet is that Access will send select/where-clauses
> and so on to the back-end, for each table, and then do it's join locally,
> on the subset of the data. Maybe it can work even smarter...
>
> Nicolas Huillard
>
> -----Message d'origine-----
> De: Mihai Gheorghiu [SMTP:tanhq@bigplanet.com]
> Date: jeudi 1 juin 2000 23:49
> À: pgsql-interfaces@postgresql.org
> Objet: ODBC driver
>
> A previous message mentioned that MSAccess performs a join locally when
> accessing a postgres database via the ODBC drivers (link files).
> Does that mean that it sends the entire tables from the postgres server to
> the Win computer and the query is actually performed by MSAccess?
>
> Thanks,
>
> Mihai Gheorghiu
>