DBIx::Admin::CreateTable is a pure Perl module.
Database vendors supported: MySQL, Oracle, Postgres, SQLite.
Assumptions:
- Every table has a primary key
- The primary key is a unique, non-null, integer
- The primary key is a single column
- The primary key column is called 'id'
- If a primary key has a corresponding auto-created index, the index is called
't_pkey': This is true for Postgres, where declaring a column as a primary
key automatically results in the creation of an associated index for that
column. The index is named after the table, not after the column.
- If a table 't' (with primary key 'id') has an associated sequence, the
sequence is called 't_id_seq': This is true for both Oracle and Postgres,
which use sequences to populate primary key columns. The sequences are named
after both the table and the column.
DBIx::Admin::TableInfo is a pure Perl module. It is a convenient wrapper around
all of these DBI methods:
- table_info()
- column_info()
- primary_key_info()
- foreign_key_info()
This class provides application developers with an abstraction class
a level away from DBI, that allows them to write an application
that works on multiple database platforms. The idea isn't to take
away the responsibility for coding different SQL on different
platforms, but to simply provide a platform that uses the right
class at the right time for whatever DB is currently in use.
The purpose of DBIx::Browse is to handle the browsing of relational
tables.
DBIx::Browse transparently translates SELECTs, UPDATEs, DELETEs and
INSERTs from the desired "human view" to the values needed for the ta-
ble. This is the case when you have related tables (1 to n) where the
detail table has a reference (FOREIGN KEY) to a generic table (i.e.
Customers and Bills) with some index (tipically an integer).
Philip M. Gollucci <philip@p6m7g8.com>
DBIx::Class::AsFdat - like CDBI::Plugin::AsFdat.
This module is useful if you manage data which has a lot of on/off attributes
like active, inactive, deleted, important, etc. If you do not want to add an
extra column for each of those attributes you can easily specify them in one
integer column.
A bit field is a way to store multiple bit values on one integer field.
The main benefit from this module is that you can add additional attributes
to your result class whithout the need to deploy or change the schema on the
data base.
DBIx::Class::Candy is a simple sugar layer for definition of DBIx::Class
results. Note that it may later be expanded to add sugar for more
DBIx::Class related things.
DBIx::Class::Cursor::Cached provides cursor class with built-in caching support.
DBIx::Class onle allows joins for prefetches.
But sometimes you can't use JOIN for prefetch.
E.g. for prefetching many related objects to resultset with paging.
Also you can use this module to create cross-database prefetches.
This module provides other logic for prefetching data to resultsets.
This module provides methods for working with adjacency lists. The
adjacency list model is a very common way of representing a tree
structure. In this model each row in a table has a prent ID column
that references the primary key of another row in the same table.
Because of this the primary key must only be one column and is usually
some sort of integer. The row with a parent ID of 0 is the root node
and is usually the parent of all other rows. Although, there is no
limitation in this module that would stop you from having multiple
root nodes.