From: Daniel Westermann-Clark Date: Thu, 27 Jul 2006 06:07:24 +0000 (-0400) Subject: Merge 'trunk' into 'DBIx-Class-current' X-Git-Tag: v0.08010~43^2~38 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits%2FDBIx-Class.git;a=commitdiff_plain;h=586420b85c6d47dc9d69668c23cd18a5e293d6bb Merge 'trunk' into 'DBIx-Class-current' --- 586420b85c6d47dc9d69668c23cd18a5e293d6bb diff --cc lib/DBIx/Class/Storage/DBI/Oracle.pm index 9c979ee,d5b605f..94df0e6 --- a/lib/DBIx/Class/Storage/DBI/Oracle.pm +++ b/lib/DBIx/Class/Storage/DBI/Oracle.pm @@@ -27,20 -28,23 +27,27 @@@ sub get_autoinc_seq AND t.triggering_event = 'INSERT' AND t.status = 'ENABLED' }; - # trigger_body is a LONG - $dbh->{LongReadLen} = 64 * 1024 if ($dbh->{LongReadLen} < 64 * 1024); - my $sth = $dbh->prepare($sql); - $sth->execute( uc($source->name) ); - while (my ($insert_trigger) = $sth->fetchrow_array) { - return uc($1) if $insert_trigger =~ m!(\w+)\.nextval!i; # col name goes here??? - } - croak "Unable to find a sequence INSERT trigger on table '" . $source->name . "'."; + + $self->dbh_do(sub { + my $dbh = shift; + # trigger_body is a LONG + $dbh->{LongReadLen} = 64 * 1024 if ($dbh->{LongReadLen} < 64 * 1024); + my $sth = $dbh->prepare($sql); + $sth->execute( uc($source->name) ); + while (my ($insert_trigger) = $sth->fetchrow_array) { + return uc($1) if $insert_trigger =~ m!(\w+)\.nextval!i; # col name goes here??? + } + croak "Unable to find a sequence INSERT trigger on table '" . $source->name . "'."; + }); } + sub columns_info_for { + my ($self, $table) = @_; + + $self->next::method($self, uc($table)); + } + + 1; =head1 NAME