On Thu, Jul 07, 2005 at 08:17:23AM -0700, John R Pierce wrote: > Neil Conway wrote: > >Denis Vlasenko wrote: > > > >>The same php script but done against Oracle does not have this > >>behaviour. > > > > > >Perhaps; presumably Oracle is essentially creating a cursor for you > >behind the scenes. libpq does not attempt to do this automatically; if > >you need a cursor, you can create one by hand. > > I do not understand how a cursor could be autocreated by a query like > > $result = pg_query($db, "SELECT * FROM big_table"); > > php will expect $result to contain the entire table (yuck!).
Really? I thought what really happened is you had to get the results one at a time using the pg_fetch family of functions. If that is true, then it's possible to make the driver fake having the whole table by using a cursor. (Even if PHP doesn't do it, it's possible for OCI to do it behind the scenes.) -- Alvaro Herrera (<alvherre[a]alvh.no-ip.org>) Officer Krupke, what are we to do? Gee, officer Krupke, Krup you! (West Side Story, "Gee, Officer Krupke") ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match