2009-08-16 11:12:53 +00:00
|
|
|
This is an SQL to OO mapper with an object API inspired by Class::DBI (with a
|
2006-03-27 08:25:14 +00:00
|
|
|
compatibility layer as a springboard for porting) and a resultset API that
|
|
|
|
allows abstract encapsulation of database operations. It aims to make
|
|
|
|
representing queries in your code as perl-ish as possible while still providing
|
|
|
|
access to as many of the capabilities of the database as possible, including
|
|
|
|
retrieving related records from multiple tables in a single query, JOIN, LEFT
|
2009-08-16 11:12:53 +00:00
|
|
|
JOIN, COUNT, DISTINCT, GROUP BY, ORDER BY and HAVING support.
|
2005-08-29 10:21:51 +00:00
|
|
|
|
2006-03-27 08:25:14 +00:00
|
|
|
DBIx::Class can handle multi-column primary and foreign keys, complex queries
|
2006-04-10 16:01:46 +00:00
|
|
|
and database-level paging, and does its best to only query the database in
|
|
|
|
order to return something you've directly asked for. If a resultset is used as
|
|
|
|
an iterator it only fetches rows off the statement handle as requested in order
|
|
|
|
to minimise memory usage. It has auto-increment support for SQLite, MySQL,
|
|
|
|
PostgreSQL, Oracle, SQL Server and DB2 and is known to be used in production
|
|
|
|
on at least the first four, and is fork- and thread-safe out of the box
|
|
|
|
(although your DBD may not be).
|
2006-03-27 08:25:14 +00:00
|
|
|
|
2007-07-15 12:13:14 +00:00
|
|
|
This project is still under rapid development, so large new features may be
|
|
|
|
marked EXPERIMENTAL - such APIs are still usable but may have edge bugs.
|
|
|
|
Failing test cases are *always* welcome and point releases are put out rapidly
|
|
|
|
as bugs are found and fixed.
|
2005-08-29 10:21:51 +00:00
|
|
|
|
|
|
|
WWW: http://search.cpan.org/dist/DBIx-Class/
|