RE: How to do a savepoint in DBI/DBD::Oracle?
Date: Thu, 26 Jan 2012 16:02:42 -0500
Message-ID: <6AFC12B9BFCDEA45B7274C534738067F876D187B_at_AAPQMAILBX02V.proque.st>
Thanks for the info....
-----Original Message-----
From: Brian Pardy [mailto:brianpa_at_burton.com]
Sent: Thursday, January 26, 2012 4:01 PM
To: Bobak, Mark
Cc: 'oracle-l_at_freelists.org'
Subject: RE: How to do a savepoint in DBI/DBD::Oracle?
Unfortunately a prepared statement for the savepoint won't work:
DBD::Oracle::st execute failed: ORA-03001: unimplemented feature (DBD ERROR: OCIStmtExecute) [for Statement "SAVEPOINT"] at ./savepoint2.pl line 32.
DBIx::Connector seems to use direct OCI calls to perform the savepoint (I haven't checked the source). DBD::Oracle just uses OCIStmtExecute for everything run through $dbh->do (the first thing I tried) and $dbh->prepare. The OCI call to create a savepoint currently isn't implemented by DBD::Oracle.
-----Original Message-----
From: oracle-l-bounce_at_freelists.org [mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Bobak, Mark
Sent: Thursday, January 26, 2012 3:50 PM
To: Radoulov, Dimitre
Cc: 'oracle-l_at_freelists.org'
Subject: RE: How to do a savepoint in DBI/DBD::Oracle?
Hi Dimitre,
Shortly after I asked my question on the list, I discovered DBIx::Connector.
Our Perl programmers didn't like the idea, due to the extra layer it adds to transaction management.
There's also been some discussion of simply putting "savepoint" in a prepared statement....?
Nothing tested yet, we're still investigating. If anything I say here makes you think I'm lacking a clue, that would be because, as far as Perl goes, I am pretty clueless.... :-)
Thanks,
-Mark
-----Original Message-----
From: Radoulov, Dimitre [mailto:cichomitiko_at_gmail.com]
Sent: Thursday, January 26, 2012 3:43 PM
To: Bobak, Mark
Cc: 'oracle-l_at_freelists.org'
Subject: Re: How to do a savepoint in DBI/DBD::Oracle?
On 26/01/2012 19:27, Bobak, Mark wrote:
> Hi all,
> Any Perl hackers/mongers out there?
>
> Is there a way to do a savepoint natively in DBI/DBD::Oracle?
>
Hi Mark,
I believe you'll need to install an additional Perl modules for that (I hope that's an option in your case):
DBIx::Connector::Driver::Oracle
Name
DBIx::Connector::Driver::Oracle - Oracle-specific connection interface Description
This subclass of DBIx::Connector::Driver provides Oracle-specific implementations of the following methods:
ping
savepoint
release
rollback_to
Regards
Dimitre
-- http://www.freelists.org/webpage/oracle-l -- http://www.freelists.org/webpage/oracle-lReceived on Thu Jan 26 2012 - 15:02:42 CST