Skip Menu |

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the DBD-Oracle CPAN distribution.

Report information
The Basics
Id: 18400
Status: resolved
Priority: 0/
Queue: DBD-Oracle

People
Owner: champoux [...] pythian.com
Requestors: hlodversson [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: Wishlist
Broken in: 1.17
Fixed in: 1.18



Subject: Implement bulk operations via DBI's execute_array interface
DBD modules can override DBI's default implementation of execute_array (and bind_param_array) to use an optimised bulk operation to perform the action. DBD::Oracle does not seem to do this, although I have seen a patch posted as early as 2003 on the perl-DBI-dev mailing list apparently implementing this feature (See: http://aspn.activestate.com/ASPN/Mail/Message/perl-DBI-dev/1686549 ) This could be a great benefit for scripts inserting large amount of data into a database.
Looking at the code it seems it does support it. I am not sure exactly what you want to do. I know it will not work for Selects but it will work for queries that do not return rows, (insert delete etc) If you can give me an example of the code you want to try I will see what is or is not working.
Subject: Re: [rt.cpan.org #18400] Implement bulk operations via DBI's execute_array interface
Date: Thu, 30 Mar 2006 05:09:57 +0200
To: bug-DBD-Oracle [...] rt.cpan.org
From: Keli Hlodversson <hlodversson [...] gmail.com>
It does support it as DBI defaults to calling execute multiple times when the driver doesn't implement execute_array. What I want implemented is an optimisation, so that inserting or updating multiple rows is faster than calling execute for each.
Well it supports it now. I just in the process of applying an old patch that was never included for other reasons. You can get the new code in a zip file at http://svn.perl.org/modules/dbd-oracle/branches/array/DBD-Oracle- executearray.ZIP It is still in testing mode but it seem to be very stable now