NAME

DBIx::Class::Storage::DBI::mysql - Storage::DBI class implementing MySQL specifics

SYNOPSIS

Storage::DBI autodetects the underlying MySQL database, and re-blesses the $storage object into this class.

my $schema = MyApp::Schema->connect( $dsn, $user, $pass, { on_connect_call => 'set_strict_mode' } );

DESCRIPTION

This class implements MySQL specific bits of DBIx::Class::Storage::DBI, like AutoIncrement column support and savepoints. Also it augments the SQL maker to support the MySQL-specific STRAIGHT_JOIN join type, which you can use by specifying join_type => 'straight' in the relationship attributes

It also provides a one-stop on-connect macro set_strict_mode which sets session variables such that MySQL behaves more predictably as far as the SQL standard is concerned.

STORAGE OPTIONS

set_strict_mode

Enables session-wide strict options upon connecting. Equivalent to:

->connect ( ... , {
  on_connect_do => [
    q|SET SQL_MODE = CONCAT('ANSI,TRADITIONAL,ONLY_FULL_GROUP_BY,', @@sql_mode)|,
    q|SET SQL_AUTO_IS_NULL = 0|,
  ]
});

FURTHER QUESTIONS?

Check the list of additional DBIC resources.

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.