Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
Only supports pg, MySQL, SQLite, and Informix for the moment. Oracle support is there but apparently not full.

FWIW, Oracle support is basically complete. Pretty much everything should work, but the Oracle code has not been tested nearly as much as the other drivers so I left the waffling in the documentation for now.

Column inflation/deflation is not customizable

It sure is. Check out the inflate/deflate column triggers.

No client-side triggers. (but cascading deletes and loads are supported.)

There are client-side column triggers. Triggers on load(), save(), etc. can be added with the usual method wrappers (override method, call SUPER::) or using any generic subroutine trigger/wrapper module on CPAN.

Executing arbitrary SQL is really hard to get at (need to use DBH directly) and there is no bridge between that SQL and the ORM. (is this true?)
There are a few methods where you can supply complete raw SQL queries and get back ORM objects (e.g., get_objects_from_sql()), but yes, it's rare (and kind of contrary to the purose of an ORM, after all). Literal SQL snippets can be used almost anywhere, however, using the common (among Perl ORMs) convention of passing a reference to a scalar.
No distinction for "primary/essential/other/all" column kinds except for primary key. (Maybe a performance issue for large columns. However, apparently, Rose::DB::Object is otherwise the best performer.)

The concept exists, just in a different form. Columns may be marked as "lazy," in which case they are not automatically loaded when an object is load()ed, but rather are loaded on demand.

No support for UUID columns.

I'm not sure what you mean by that, but if I'm close, you should be able to do that kind of thing using the existing column defaults mechanism combined with something like Scalar::Defer.

In reply to Re: Perl ORM comparison (Class::DBI vs. DBIx::Class vs. Rose::DB::Object) by siracusa
in thread Perl ORM comparison (Class::DBI vs. DBIx::Class vs. Rose::DB::Object) by aulusoy

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others imbibing at the Monastery: (3)
    As of 2020-12-03 01:09 GMT
    Find Nodes?
      Voting Booth?
      How often do you use taint mode?

      Results (49 votes). Check out past polls.