Re: [Gambas-user] Result object, again
On Thu, 2010-11-25 at 20:06 +0100, tobias wrote: A result object stores the entire query of the result in memory, because of the stupidity of most SQL backends. Hmmm, I'd take that statement with a grain of salt. When working on databases at work, I think we'd have soon run into major problems if this were true. Perhaps the difference is that the databases I'd use at work would be DB2, Oracle etc. running either on the mainframe (yes, they still exist!) or big servers. We wouldn't have used any 'toy' databases like access, sqlite etc. But you gotta love sqlite for its simplicity, access for it's user-friendliness... lol And, sadly enough, we never used Gambas for any project at work :-( Regards, Caveat -- Increase Visibility of Your 3D Game App Earn a Chance To Win $500! Tap into the largest installed PC base get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Result object, again
On Thu, 2010-11-25 at 20:06 +0100, tobias wrote: A result object stores the entire query of the result in memory, because of the stupidity of most SQL backends. Hmmm, I'd take that statement with a grain of salt. When working on databases at work, I think we'd have soon run into major problems if this were true. Perhaps the difference is that the databases I'd use at work would be DB2, Oracle etc. running either on the mainframe (yes, they still exist!) or big servers. We wouldn't have used any 'toy' databases like access, sqlite etc. But you gotta love sqlite for its simplicity, access for it's user-friendliness... lol And, sadly enough, we never used Gambas for any project at work :-( Regards, Caveat The problem is not actually in the servers, but in the client libraries. They are usually not as clever as they should be. Regards, -- Benoît Minisini -- Increase Visibility of Your 3D Game App Earn a Chance To Win $500! Tap into the largest installed PC base get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Result object, again
2010/11/25 Benoît Minisini gam...@users.sourceforge.net: good evening all, i have another question about my eternal punishment: the result object :-) caveat answered to a former question about results in general: If you got into the habit of reading all the records you've selected into memory (or even if the Result object worked that way behind the scenes...), you'd soon find everything breaking with Out Of Memory errors as soon as you start doing anything serious. my question now is, how the result works behind the scenes, is there a counter (result.index?) that tells a layer (the driver?) which record is to be given back? regards, tobi A result object stores the entire query of the result in memory, because of the stupidity of most SQL backends. Postgresql definately supports cursors (being able to retrieve rows in groups and not hold them all in memory) Ian Maybe all database backends have their specific way of not holding the full result in memory, I don't know. Anyway, all these SQL backends are stupid, that should be completely transparent. Regards, -- Benoît Minisini -- Increase Visibility of Your 3D Game App Earn a Chance To Win $500! Tap into the largest installed PC base get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
[Gambas-user] Result object, again
good evening all, i have another question about my eternal punishment: the result object :-) caveat answered to a former question about results in general: If you got into the habit of reading all the records you've selected into memory (or even if the Result object worked that way behind the scenes...), you'd soon find everything breaking with Out Of Memory errors as soon as you start doing anything serious. my question now is, how the result works behind the scenes, is there a counter (result.index?) that tells a layer (the driver?) which record is to be given back? regards, tobi -- Increase Visibility of Your 3D Game App Earn a Chance To Win $500! Tap into the largest installed PC base get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Result object, again
good evening all, i have another question about my eternal punishment: the result object :-) caveat answered to a former question about results in general: If you got into the habit of reading all the records you've selected into memory (or even if the Result object worked that way behind the scenes...), you'd soon find everything breaking with Out Of Memory errors as soon as you start doing anything serious. my question now is, how the result works behind the scenes, is there a counter (result.index?) that tells a layer (the driver?) which record is to be given back? regards, tobi A result object stores the entire query of the result in memory, because of the stupidity of most SQL backends. The gb.db.form implements a system that only keep a small part of the query result, by using the operator on the table key, Order By, and the Limit() method. That way, you can use a DataBrowser to browse a table that is located on a far server easily. Regards, -- Benoît Minisini -- Increase Visibility of Your 3D Game App Earn a Chance To Win $500! Tap into the largest installed PC base get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user
Re: [Gambas-user] Result object, again
2010/11/25 Benoît Minisini gam...@users.sourceforge.net: good evening all, i have another question about my eternal punishment: the result object :-) caveat answered to a former question about results in general: If you got into the habit of reading all the records you've selected into memory (or even if the Result object worked that way behind the scenes...), you'd soon find everything breaking with Out Of Memory errors as soon as you start doing anything serious. my question now is, how the result works behind the scenes, is there a counter (result.index?) that tells a layer (the driver?) which record is to be given back? regards, tobi A result object stores the entire query of the result in memory, because of the stupidity of most SQL backends. Postgresql definately supports cursors (being able to retrieve rows in groups and not hold them all in memory) Ian -- Increase Visibility of Your 3D Game App Earn a Chance To Win $500! Tap into the largest installed PC base get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev ___ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user