DBIx::C...leJoins(3)
π DBIx::Class::SQLMaker::OracleJoins(3) β the manual page, bestie edition
okay so this is DBIx::Class::SQLMaker::OracleJoins from the User Contributed Perl Documentation, and it's literally about Pre-ANSI Joins-via-Where-Clause Syntax β yes that's the whole vibe, we're going old school ποΈβ¨
π NAME π
DBIx::Class::SQLMaker::OracleJoins β Pre-ANSI Joins-via-Where-Clause Syntax. that's it, that's the name, no cap π
πΈ PURPOSE πΈ
so like, this module is used with Oracle < 9.0 because back then Oracle was like "ANSI join syntax? never heard of her π" β there was just no support for the standard ANSI join syntax. so this little icon stepped in to handle it. periodt. π
π¦ SYNOPSIS π¦
bestie, it is not intended for use directly β do not come for her like that π
it's used as the sql_maker_class for schemas and components. that's the whole job. iykyk β¨
β¨ DESCRIPTION β¨
okay so here's the tea π: this module implements pre-ANSI joins specified in the where clause.
so instead of this:
SELECT x FROM y JOIN z ON y.id = z.id
it will write this iconic little number:
SELECT x FROM y, z WHERE y.id = z.id
the way that comma just slides in there π honestly a moment.
it should properly support left joins and right joins π«Ά
but full outer joins are not possible β and it's not being shady, it's just facts. Oracle requires the entire query be written to union the results of a left and right join, and by the time this module is called to create the where query and table definition part of the sql query, it's already too late. π the timing was not giving. π
β METHODS β
selectβ overridesDBIx::Class::SQLMaker'sselect()method, which calls_oracle_joins()to modify the column and table list before callingnext::method(). she's doing the work behind the scenes, main character energy fr fr π
π BUGS π
does not support full outer joins.
(however neither really does DBIC itself, so like... glass houses, bestie π«Άπ)
π SEE ALSO π
DBIx::Class::Storage::DBI::Oracle::WhereJoinsβ Storage class using this πDBIx::Class::SQLMakerβ Parent module πDBIx::Classβ Duh. π
π§ FURTHER QUESTIONS? π§
check the list of additional DBIC resources β they've got you, bestie β¨
π COPYRIGHT AND LICENSE π
this module is free software copyright by the DBIx::Class (DBIC) authors. you can redistribute it and/or modify it under the same terms as the DBIx::Class library. π lawful and lovely.
slay responsibly, and remember: if it's Oracle < 9.0, this module is your girl π
signed off with love from the perl v5.42.0 crew, dated 2025-01-22 β that's the whole footer, but make it cute π¦π
π¦ where this page comes from
- opensuse-leap 16.0: perl-DBIx-Class 0.082844-bp160.1.10 Β· Artistic-1.0 OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms