DBIx::SQLEngine::Driver::Trait::NoJoins - For databases without join ability


DBIx-SQLEngine documentation Contained in the DBIx-SQLEngine distribution.

Index


Code Index:

NAME

Top

DBIx::SQLEngine::Driver::Trait::NoJoins - For databases without join ability

SYNOPSIS

Top

  # Classes can import this behavior if they can't join
  use DBIx::SQLEngine::Driver::Trait::NoJoins ':all';

DESCRIPTION

Top

This package works with DBD drivers which lack the basic ability to join tables.

About Driver Traits

You do not need to use this package directly; it is used internally by those driver subclasses which need it.

For more information about Driver Traits, see "About Driver Traits" in DBIx::SQLEngine::Driver.

REFERENCE

Top

The following methods are provided:

Select to Retrieve Data

sql_join()

Dies with an "Unsupported" message.

Database Capability Information

dbms_joins_unsupported
  $sqldb->dbms_joins_unsupported () : 1

Capability Limitation: This driver does not support joins.

dbms_join_on_unsupported
  $sqldb->dbms_join_on_unsupported() : 1

Capability Limitation: This driver does not support the "join ... on ..." syntax.

dbms_outer_join_unsupported
  $sqldb->dbms_outer_join_unsupported() : 1

Capability Limitation: This driver does not support any type of outer joins.

SEE ALSO

Top

See DBIx::SQLEngine for the overall interface and developer documentation.

See DBIx::SQLEngine::Docs::ReadMe for general information about this distribution, including installation and license information.

See DBIx::Sequence for another version of the sequence-table functionality, which greatly inspired this module.


DBIx-SQLEngine documentation Contained in the DBIx-SQLEngine distribution.
########################################################################

package DBIx::SQLEngine::Driver::Trait::NoJoins;

use strict;
use Carp;
use vars qw( @EXPORT_OK %EXPORT_TAGS );

########################################################################

use Exporter;
sub import { goto &Exporter::import } 
@EXPORT_OK = ( 
  qw( 
    sql_join
    dbms_joins_unsupported
    dbms_join_on_unsupported 
    dbms_outer_join_unsupported
  ),
);
%EXPORT_TAGS = ( all => \@EXPORT_OK );

########################################################################

sub sql_join { die "Unsupported" }

########################################################################

sub dbms_joins_unsupported      { 1 }
sub dbms_join_on_unsupported    { 1 }
sub dbms_outer_join_unsupported { 1 }

########################################################################

########################################################################

1;