DBIx::Custom Documents

yuki-kimoto edited this page Dec 5, 2012 · 35 revisions
Clone this wiki locally

DBIx::Custom Documents

DBIx::Custom is a DBI extended class to execute insert, update, delete, and select statement easily. DBIx::Custom has many useful features. Compared to other O/R mapper modules, it is easy to learn, because DBIx::Custom has many SQL-like syntax.

This is an example.

  use DBIx::Custom;
  # Connect to database
  my $dbi = DBIx::Custom->connect(dsn => $dsn);
  # Insert
  $dbi->insert({id => 1, title => 'Perl'}, table => 'book');
  # Update
  $dbi->update({title => 'Perl'}, table => 'book', where => {id => 1});
  # Delete
  $dbi->delete(table => 'book', where => {id => 1});
  # Select
  my $rows = $dbi->select(table => 'book')->all;


DBIx::Custom have the following features.

  • Execute insert, update, delete, or select statement easily
  • Create where clause flexibly
  • Named place holder support
  • Model support
  • Connection manager support
  • Choice your favorite relational database management system, MySQL, SQLite, PostgreSQL, Oracle, Microsoft SQL Server, Microsoft Access, DB2 or anything,
  • Filtering by data type or column name
  • Create order by clause flexibly
  • Fast multiple data insert support
  • Bulk insert support (MySQL, PostgreSQL)

If you search O/R mapper like Ruby's ActiveRecord or think DBIx::Custom is very complex or think DBIx::Simple don't have enough features, I recommend DBIx::Custom for you. DBIx::Custom also have SQL generation features like SQL::Abstruct. DBIx::Custom is not depended on specific RDBMS. you can use this module with any RDMBS.


Connect to database

Query execution

Fetching rows

Where clause

Order by clause



Parameter mapping

Connection manager




Generate SQL

Table and column information

Web site

DBIx::Custom - Perl O/R Mapper