DBIx-Perlish
view release on metacpan or search on metacpan
Everything database-related is put into a separate module, or into a
collection of modules. Wherever database access is required,
a corresponding sub or method from such a module is called from the
main program. Whenever something is needed that the DB module does
not already provide, a new sub or method is added into it.
- Object-relational mapping
One carefully designs the database schema and an associated collection
of classes, then formulates the design in terms of any of the existing
object-relational mapper modules like `Class::DBI`, `DBIx::Class`
or `Tangram`, then uses objects which perform all necessary queries
under the hood. This approach is even cleaner than "clean and tidy"
above, but it has other issues. Some schemas do not map well into
the OO space. Typically, the resulting performance is an issue
as well. The performance issues can in some cases be alleviated
by adding hand-crafted SQL in strategic places, so in this regard
the object-relational mapping approach can resemble the "clean and tidy"
approach.
lib/DBIx/Perlish.pm view on Meta::CPAN
Everything database-related is put into a separate module, or into a
collection of modules. Wherever database access is required,
a corresponding sub or method from such a module is called from the
main program. Whenever something is needed that the DB module does
not already provide, a new sub or method is added into it.
=item Object-relational mapping
One carefully designs the database schema and an associated collection
of classes, then formulates the design in terms of any of the existing
object-relational mapper modules like C<Class::DBI>, C<DBIx::Class>
or C<Tangram>, then uses objects which perform all necessary queries
under the hood. This approach is even cleaner than "clean and tidy"
above, but it has other issues. Some schemas do not map well into
the OO space. Typically, the resulting performance is an issue
as well. The performance issues can in some cases be alleviated
by adding hand-crafted SQL in strategic places, so in this regard
the object-relational mapping approach can resemble the "clean and tidy"
approach.
( run in 0.321 second using v1.01-cache-2.11-cpan-3cd7ad12f66 )