Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

+ -

  ANNOUNCE: DBIx::DataModel 1.04 on 2008.09.29 19:06 dami

Submitted by dami on 2008.09.29 19:06
Module News
dami writes "

DBIx::DataModel v1.04 has been released to CPAN. This is
a major revision from previous v0.35, with several architectural
changes and added functionalities.

DBIx::DataModel is an Object-Relational mapping layer (ORM). Some of its
strong points are :

- UML-style declaration of relationships (instead of 'has_many',
    'belongs_to', etc.)

- efficiency through fine control of collaboration with the
    DBI layer (prepare/execute, fetch into reusable memory location, etc.)

- improved API for SQL::Abstract (named parameters, simplified 'orderBy')

- clear conceptual distinction between
        - data sources (tables and views),
        - database statements (stateful objects representing stepwise building
                                                        of an SQL query and stepwise retrieval of results),
        - data rows (lightweight hashrefs containing nothing but column
                                                        names and values)

- joins with simple syntax and possible override of default
    INNER JOIN/LEFT JOIN properties; instances of joins multiply
    inherit from their member tables

- named placeholders at the ORM level

- nested, cross-database transactions

The synopsis is in
http://search.cpan.org/dist/DBIx-DataModel/lib/DBIx/DataModel.pm;
the design principles and general architecture are explained
in http://search.cpan.org/dist/DBIx-DataModel/lib/DBIx/DataModel/Doc/Design.pod

"
Read More 0 comments

This discussion was created as logged-in users only. Log in and try again!
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login
Loading... please wait.