By taking the busy work out of using Class::DBI as you see fit, your code
becomes more useful by size. Most of us end up using at least a couple
Class::DBI extensions in our programs, and it's just a pain. Enter the Swiss
Army Knife.
Class::DBI::SQLite is an extension to Class::DBI for DBD::SQLite, which allows
you to populate auto incremented row id after insert.
Class::DBI::Sweet provides convenient count, search, page, and cache
functions in a sweet package. It integrates these functions with
"Class::DBI" in a convenient and efficient way.
Using this module will plug-in a new constraint type to Class::DBI
that uses CGI::Untaint.
Any column can then be said to require untainting of a given type
- i.e. that any value which you attempted to set that column to
(include at create() time) must pass an untaint as_type() check.
This is an extension to Class::DBI, containing several functions and
optimisations for the MySQL database. Instead of setting Class::DBI as
your base class, use this instead.
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()
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.