On Mon, 2006-12-18 at 16:56 -0500, Art Protin wrote: > Dear folks, > I find yet again that I am confused by what I read in pep-0249. > This time it is the last line describing the attribute of cursor objects > named .arraysize (I quote here both paragraphs): > > This read/write attribute specifies the number of rows to > fetch at a time with fetchmany(). It defaults to 1 meaning > to fetch a single row at a time. > > Implementations must observe this value with respect to > the fetchmany() method, but are free to interact with the > database a single row at a time. It may also be used in > the implementation of executemany(). > > I fail to grasp how .arraysize could have any bearing on .executemany() > or for that matter any operation other than fetchmany(). Thus I find I > must request aid in understanding what the intent is here - HELP, please.
It says "It *may* be used in the implementation of executemany()." I imagine this would be useful for a database API that allows passing parameters in bulk. You're free to implement executemany() without referring to arraysize if there is no advantage in referring to arraysize. > While I am bothering you good people with my silly questions, I > might just as well tack on another: if one invokes .executemany with a > seq_of_parameters that is empty (like > > a_cursor.executemany(SQL, []) > > ) shouldn't the interface module execute the query zero times, ie, not > execute the query at all? Yes, executemany() with an empty sequence is a no-op. -- Carsten Haese | Phone: (419) 861-3331 Software Engineer | Direct Line: (419) 794-2531 Unique Systems, Inc. | FAX: (419) 893-2840 1687 Woodlands Drive | Cell: (419) 343-7045 Maumee, OH 43537 | Email: [EMAIL PROTECTED] _______________________________________________ DB-SIG maillist - DB-SIG@python.org http://mail.python.org/mailman/listinfo/db-sig