NAME

DBIx::Class::Manual::FAQ - Frequently asked questions

GENERAL

What is the point of this module? Is it a fork of Class::DBI?

This is an alternative to Class::DBI, intended to provide greater functionality and simplicity.

It is inspired by the Class::DBI framework, and provides a compat layer to ease porting, but with a resultset-oriented, MI-based design that makes extension easier and allows us to support more complex relational operations like self-joins, DISTINCT, GROUP BYs and more.

What databases does it support?

At least MSSQL, MySQL, Oracle, PostgreSQL, SQLite and DB2.

What's the current status of this module?

This project is still at an early stage, so the maintainers don't make any absolute promise that full backwards-compatibility will be supported; however, if we can without compromising the improvements we're trying to make, we will, and any non-compatible changes will merit a full justification on the mailing list and a CPAN developer release for people to test against.

Where can I go for support?

Mailing list: http://lists.rawmode.org/mailman/listinfo/dbix-class/

SVN: http://dev.catalyst.perl.org/repos/bast/trunk/DBIx-Class/

Wiki: http://dbix-class.shadowcatsystems.co.uk/

IRC: irc.perl.org#dbix-class

Inflating your date/time columns

You can use DBIx::Class::InflateColumn to automatically create DateTime objects from your date/time columns. For more information, see DBIx::Class::InflateColumn.

POSTGRESQL-SPECIFIC PROBLEMS

Can't get last insert ID; inserts with serial primary keys fail

Older DBI and DBD::Pg versions do not handle last_insert_id correctly, causing code that uses auto-incrementing primary key columns to fail with a message such as:

Can't get last insert id at /.../DBIx/Class/Row.pm line 95

In particular the RHEL 4 and FC3 Linux distributions both ship with combinations of DBI and DBD::Pg modules that do not work correctly.

DBI version 1.50 and DBD::Pg 1.43 are known to work.

SEE ALSO

DBIx::Class::Manual::Intro