Hello, On 26/12/2010 19:39, Sylvain Pointeau wrote: > I would have believed that only the vector is filled with the results, > I would never think that the results are first loaded in memory, then > stored in the vectors.
Vectors are filled directly only with Oracle (and only for fundamental types), as this is the only database that has direct support for this kind of data transfer. Other database servers transmit the query results to the client memory, in some form that is not directly visible to the client, and then the client API is used to fill the vectors with values obtained from the cached result. Interestingly, this means that even though the direct transfer allows to obtain huge performance gains with Oracle, vectors can be actually slower than individual row reads with other backends. I didn't make any tests to check it, but it would not surprise me. Unfortunately there is no way to make a good and truly universal database access layer. Regards, -- Maciej Sobczak * www.msobczak.com * www.inspirel.com ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ Soci-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/soci-users
