I have written a visual basic program that uses SQL statements to pull data from an Access 97 database.
The database connectivity I use is ADODB if this is relevant.
My question is what data gets passed down the line.
I have found if I have a large table with thousands of records then if I write an SQL statement to read one record (eg a couple of bytes), I find that 200,000 bytes gets transferred.
Subsequent, SQL statements do not pass any data down the line (eg the entire table), but the program can still use the data.
It looks as if although I have only asked for one piece of data, then the whole lot gets downloaded!! Is this how a client server database should work??
(I have a program installed that tells me how much data is being downloaded by my network card.)
My instinct tells me the data or indexes are being downloaded into a client side cache - but this is not what I want. All I want to go up is the SQL statement, and all I want to coem down is the resultant data.
The database connectivity I use is ADODB if this is relevant.
My question is what data gets passed down the line.
I have found if I have a large table with thousands of records then if I write an SQL statement to read one record (eg a couple of bytes), I find that 200,000 bytes gets transferred.
Subsequent, SQL statements do not pass any data down the line (eg the entire table), but the program can still use the data.
It looks as if although I have only asked for one piece of data, then the whole lot gets downloaded!! Is this how a client server database should work??
(I have a program installed that tells me how much data is being downloaded by my network card.)
My instinct tells me the data or indexes are being downloaded into a client side cache - but this is not what I want. All I want to go up is the SQL statement, and all I want to coem down is the resultant data.