From: Matt S Trout Date: Sat, 16 Jun 2007 17:19:36 +0000 (+0000) Subject: fix conditional and document behaviour X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=08fabf592cfb90f174428eb8ac258caed293e6f7;p=dbsrgits%2FDBIx-Class-Historic.git fix conditional and document behaviour --- diff --git a/lib/DBIx/Class/Storage/DBI/Oracle.pm b/lib/DBIx/Class/Storage/DBI/Oracle.pm index d2fef18..d52adbb 100644 --- a/lib/DBIx/Class/Storage/DBI/Oracle.pm +++ b/lib/DBIx/Class/Storage/DBI/Oracle.pm @@ -14,7 +14,7 @@ sub _rebless { my ($major, $minor, $patchlevel) = split(/\./, $version); # Default driver - my $class = $major >= 8 + my $class = $major <= 8 ? 'DBIx::Class::Storage::DBI::Oracle::WhereJoins' : 'DBIx::Class::Storage::DBI::Oracle::Generic'; @@ -40,8 +40,16 @@ DBIx::Class::Storage::DBI::Oracle - Base class for Oracle driver =head1 DESCRIPTION This class simply provides a mechanism for discovering and loading a sub-class -for a specific version Oracle backend. It should be transparent to the user. +for a specific version Oracle backend. It should be transparent to the user. +For Oracle major versions <= 8 it loads the ::Oracle::WhereJoins subclass, +which unrolls the ANSI join style DBIC normally generates into entries in +the WHERE clause for compatibility purposes. To force usage of this version +no matter the database version, add + + __PACKAGE__->storage_type('::DBI::Oracle::WhereJoins'); + +to your Schema class. =head1 AUTHORS