I do not think so. That section of DBD::Oracle code does need some rework as it
was written for Oracle 8. It should be updated to use the Oracle 10+
functionality for both select and updates. Alas one never seems to have any
time work, (well finish actully) the work on this one. CheersJohn > Date: Mon,
28 Jan 2013 14:31:44 +0100
> From: h.m.br...@xs4all.nl
> To: dbi-dev@perl.org
> Subject: bind_param () - did something change?
>
> I have a table with 5 BLOB's. BLOB's are easy in DBD::CSV and
> DBD::Unify, but they need "some help" in Oracle.
>
> I had a script that did load a table from a CSV file by first inserting
> all the records without the blob's and then update each blob in turn
> ((DBD::Oracle would not allow me to have 5 BLOB's in one insert or
> update).
>
> Given that c_ll + m_nr are a primary key, I had to change
>
> foreach my $blob (qw( w_tl w_xml0 w_xml1 w_xml2 w_xml3 attr )) {
> print STDERR "Setting $blob in ll_verz_rel ...\n";
> my $sth = $dbh->prepare ("update ll_verz_rel set $blob = ? where c_ll = ?
> and m_nr = ?");
> for (@llvr) {
> $_->{$blob} or next;
> $sth->bind_param (1, $_->{$blob}, { ora_type => ORA_BLOB });
> $sth->bind_param (2, $_->{c_ll}, { ora_type => ORA_NUMBER });
> $sth->bind_param (3, $_->{m_nr}, { ora_type => ORA_NUMBER });
> $sth->execute ();
> }
> }
>
> to
>
> foreach my $blob (qw( w_tl w_xml0 w_xml1 w_xml2 w_xml3 attr )) {
> print STDERR "Setting $blob\tin ll_verz_rel ... ";
> my $sth = prepar ("update ll_verz_rel set $blob = ? where c_ll = ? and
> m_nr = ?");
> $sth->bind_param (1, undef, { ora_type => ORA_BLOB, ora_field => $blob
> });
> for (@llvr) {
> $_->{$blob} or next;
> $sth->execute ($_->{$blob}, $_->{c_ll}, $_->{m_nr});
> }
> }
>
> to get it to insert the records. It FAILED to work without the
> ora_field addition
>
> Now in this case I don't really mind the change. It makes my code
> easier, but if I bind to one parameter only, the bind should/could know
> what to bind to, it shouldn't need the ora_field entry in the hashref.
> In above case, there is one ONE blob in the statement at any time, so
> there is no conflict at all, ever.
>
> --
> H.Merijn Brand http://tux.nl Perl Monger http://amsterdam.pm.org/
> using perl5.00307 .. 5.17 porting perl5 on HP-UX, AIX, and openSUSE
> http://mirrors.develooper.com/hpux/ http://www.test-smoke.org/
> http://qa.perl.org http://www.goldmark.org/jeff/stupid-disclaimers/