NAME

DBIx::QuickORM::Manual::Concepts - Important/Key concepts for DBIx::QuickORM.

DESCRIPTION

Knowing the basics about these concepts will help you understand how DBIx::QuickORM does things.

DIALECTS

A dielect tell DBIx::QuickORM hwo to interact with and communicate with a database. Not all SQL databases use identical syntax or extensions, a dialects job to to define behaviors a specific database understands.

DBIx::QuickORM::Dialect is the base class for dialects. All dialects should subclass this base class.

It is important to pick the dialect that best matches your situation. DBIx::QuickORM::Dialect::MySQL may work for all flavors of MySQL, but DBIx::QuickORM::Dialect::MySQL::MariaDB will work much better if you are using MariaDB, as the dialect will know about additions regular mysql does not support.

DBIx::QuickORM::Dialect::PostgreSQL

For interacting with PostgreSQL databases.

DBIx::QuickORM::Dialect::SQLite

For interacting with SQLite databases.

DBIx::QuickORM::Dialect::MySQL

For interacting with generic MySQL databases.

DBIx::QuickORM::Dialect::MySQL::MariaDB

For interacting with MariaDB databases.

DBIx::QuickORM::Dialect::MySQL::Percona

For interacting with MySQL as distributed by Percona.

DBIx::QuickORM::Dialect::MySQL::Community

For interacting with the Community Edition of MySQL.

SCHEMA

This refers to DBIx::QuickORM::Schema, your entire database schema/structure should be represented in the ORM as a schema structure consisting of DBIx::QuickORM::Schema::Table objects, and others.

AFFINITY

Whenever you define a column in DBIx::QuickORM it is necessary for the ORM to know the affinity of the column. It may be any of these:

string

The column should be treated as a string when written to, or read from the database.

numeric

The column should be treated as a number when written to, or read from the database.

boolean

The column should be treated as a boolean when written to, or read from the database.

binary

The column should be treated as a binary data when written to, or read from the database.

Much of the time the affinity can be derived from other data. The DBIx::QuickORM::Affinity package has an internal map for default affinities for many SQL types. Also if you use a class implementing DBIx::QuickORM::Role::Type it will often provide an affinity. You can override the affinity if necessary. If the affinity cannot be derived you must specify it.

SOURCE

The source code repository for DBIx-QuickORM can be found at http://github.com/exodist/DBIx-QuickORM/.

MAINTAINERS

Chad Granum <exodist@cpan.org>

AUTHORS

Chad Granum <exodist@cpan.org>

COPYRIGHT

Copyright Chad Granum <exodist7@gmail.com>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://dev.perl.org/licenses/