The following module was proposed for inclusion in the Module List:

  modid:       SQL::Exec
  DSLIP:       bdphp
  description: Simple thread and fork safe database access
  userid:      MATHIAS (Mathias Kende)
  chapterid:   7 (Database_Interfaces)
  communities:

  similar:
    DBI::Simple, DBIx::Simple, DBIx::DWIW, DBIx::Wrapper,
    DBIx::SimpleGoBetween, DBIx::Sunny, SQL::Executor

  rationale:

    SQL::Exec is (another) interface to the DBI which strive for
    simplicity. Its main functionalities are: - DBMS independent. The
    module offers specific support for some DB server but can work with
    any DBD driver. - Extremely simple, a query is always only one
    function or method call - everything is as (in)efficient: you choose
    the function to call based only on the data that you want to get
    back, not on some supposed performance benefit - supports both OO
    and functional paradigm with the same interface and functionalities
    - hides away all DBIism, the user does not need to set any options,
    they are handled by the library with nice defaults. - safe:
    SQL::Exec verify that what happens is what you meant - Not an ORM,
    nor a query generator: the user controls his SQL. - easy to extends
    to offer functionalities specific to one DB server Due to its usage
    of DBIx::Connector and SQL::SplitStatement, SQL::Exec has this
    additional features: - handle transparently network failure,
    fork/thread, etc. - safely handle multi statement query and
    automatic transaction.

    All this means that SQL::Exec is extremely beginners friendly, it
    can be used with no advanced knowledge of Perl and code using it can
    be easily read by people with no knowledge of Perl at all, which is
    interesting in a mixed environment.

    Also, the fact that SQL::Exec does not try to write SQL for the
    programmer (this is a feature, not a bug), ease the migration to
    other tools or languages if a big part of the application logic is
    written in SQL.

    Thus SQL::Exec is optimal for fast prototyping, for small
    applications which do not need a full fledged ORM, for migrating SQL
    code from/to an other environment, etc. It is usable (thanks to
    DBIx::Connector) in a CGI scripts, in a mod_perl program or in any
    web framework as the database access layer.

    There is quiet a lot of other interfaces to the DBI, with some of
    them claiming simplicity. Here is a list of some of these modules,
    classified by how they are not SQL::Exec: - These modules are SQL
    generator: DBIx::SimplePerl, DBIx::Perlish, DBIx::Easy,
    DBIx::SQLEngine (and purely OO), DBIx::PDlib, SQL::DB,
    DBIx::Wrapper, DBIx::Custom , DBIx::Abstract - These modules are
    ORM: DBI::Easy, DBI::Lite, DBIx::Skinny - These modules handle only
    MySQL: DBI::Simple (unregistered), DBIx::DWIW (and purely OO),
    SQL::Easy, DBIx::Sunny (and SQLite) - These modules are purely OO:
    DBIx::SimpleQuery, DBIx::Simple, and others already listed - This
    module has no error control (this is a design decision):
    DBIx::SimpleGoBetween - SQL::Executor (which did not exist when I
    created SQL::Exec) is close to SQL::Exec (even the name), but it is
    an SQL generator augmented to ease the usage of SQL and lack some of
    the high level function of SQL::Exec (also it is only OO).

    Finally, the name for this module comes from the fact that it is
    centred around SQL execution, not the DBI.

  enteredby:   MATHIAS (Mathias Kende)
  enteredon:   Mon Jan 14 22:58:04 2013 GMT

The resulting entry would be:

SQL::
::Exec            bdphp Simple thread and fork safe database access  MATHIAS


Thanks for registering,
-- 
The PAUSE

PS: The following links are only valid for module list maintainers:

Registration form with editing capabilities:
  
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=73900000_e404825856a249ba&SUBMIT_pause99_add_mod_preview=1
Immediate (one click) registration:
  
https://pause.perl.org/pause/authenquery?ACTION=add_mod&USERID=73900000_e404825856a249ba&SUBMIT_pause99_add_mod_insertit=1
Peek at the current permissions:
  
https://pause.perl.org/pause/authenquery?pause99_peek_perms_by=me&pause99_peek_perms_query=SQL%3A%3AExec

Reply via email to