spelling fixes in the documaentation, sholud be gud now ;)
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Storage / DBI / Oracle / WhereJoins.pm
CommitLineData
9382ad07 1package DBIx::Class::Storage::DBI::Oracle::WhereJoins;
2
9382ad07 3use strict;
4use warnings;
5
2ad62d97 6use base qw( DBIx::Class::Storage::DBI::Oracle::Generic );
7use mro 'c3';
8
6f4ddea1 9__PACKAGE__->sql_maker_class('DBIx::Class::SQLAHacks::OracleJoins');
9382ad07 10
9382ad07 111;
12
13__END__
14
15=pod
16
17=head1 NAME
18
19DBIx::Class::Storage::DBI::Oracle::WhereJoins - Oracle joins in WHERE syntax
20support (instead of ANSI).
21
22=head1 PURPOSE
23
24This module was originally written to support Oracle < 9i where ANSI joins
25weren't supported at all, but became the module for Oracle >= 8 because
48580715 26Oracle's optimising of ANSI joins is horrible.
9382ad07 27
28=head1 SYNOPSIS
29
30DBIx::Class should automagically detect Oracle and use this module with no
31work from you.
32
33=head1 DESCRIPTION
34
35This class implements Oracle's WhereJoin support. Instead of:
36
37 SELECT x FROM y JOIN z ON y.id = z.id
38
39It will write:
40
41 SELECT x FROM y, z WHERE y.id = z.id
42
43It should properly support left joins, and right joins. Full outer joins are
44not possible due to the fact that Oracle requires the entire query be written
45to union the results of a left and right join, and by the time this module is
48580715 46called to create the where query and table definition part of the SQL query,
9382ad07 47it's already too late.
48
49=head1 METHODS
50
6f4ddea1 51See L<DBIx::Class::SQLAHacks::OracleJoins> for implementation details.
9382ad07 52
53=head1 BUGS
54
55Does not support full outer joins.
56Probably lots more.
57
58=head1 SEE ALSO
59
60=over
61
6f4ddea1 62=item L<DBIx::Class::SQLAHacks>
63
64=item L<DBIx::Class::SQLAHacks::OracleJoins>
9382ad07 65
66=item L<DBIx::Class::Storage::DBI::Oracle::Generic>
67
68=item L<DBIx::Class>
69
70=back
71
72=head1 AUTHOR
73
74Justin Wheeler C<< <jwheeler@datademons.com> >>
75
76=head1 CONTRIBUTORS
77
78David Jack Olrik C<< <djo@cpan.org> >>
79
80=head1 LICENSE
81
82This module is licensed under the same terms as Perl itself.
83
84=cut