The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

DBIx::Simple::Comparison - DBIx::Simple in DBI jargon

DESCRIPTION

This is just a simple and inaccurate overview of what DBI things the DBIx::Simple things represent, or the other way around.

This document can be useful to find the foo equivalent of bar.

? means that DBI doesn't have an equivalent or that I couldn't find one.

= means that DBIx::Simple provides a direct wrapper to the DBI function.

~ means that DBIx::Simple's method does more or less the same, but usually in a more high level way: context sensitive, combining things, automatically taking care of something.

Note that DBIx::Simple is a wrapper around DBI. It is not "better" than DBI. In fact, DBIx::Simple cannot work without DBI.

Using DBI directly is always faster than using DBIx::Simple's equivalents. (For the computer, that is. For you, DBIx::Simple is supposed to be faster.)

Classes, common names

 use DBI       ~  use DBIx::Simple

 $DBI::errstr  =  DBIx::Simple->error

 DBI::db       ~  DBIx::Simple
 $dbh          ~  $db
 $dbh->errstr  =  $db->error

 connect       ~  connect
 connect       ~  new

 DBI::st       ~  DBIx::Simple::Result
 <undef>       ~  DBIx::Simple::Dummy
 $sth          ~  $result

Queries

DBI

 my $sth = $dbh->prepare_cached($query);
 $sth->execute(@values);

~ DBIx::Simple

 my $result = $db->query($query, $values);

Results

 DBI                         DBIx::Simple

 bind_columns             ~  bind

 fetchrow_arrayref/fetch  =  fetch
 fetchrow_array           ~  list
 ?                        ?  flat
 [@{fetchrow_arrayref}]   =  array
 fetchall_arrayref        ~  arrays
 fetchrow_hashref(N_?)    =  hash
 ?                        ?  hashes

 fetchall_hashref         =  map_hashes
 ?                        ?  map_arrays
 ?                        ?  map

 $sth->{NAME_lc/NAME}     =  $result->columns

Direct access

 DBI                 DBIx::Simple

 $dbh             =  $db->dbh
 $sth->{$foo}     =  $result->attr($foo)

 func             =  func

 begin_work       =  begin_work
 commit           =  commit
 rollback         =  rollback
 last_insert_id   =  last_insert_id
 rows             =  rows

 disconnect       ~  disconnect
 finish           ~  finish

DBIx::Simple specific (?)

 keep_statements
 lc_columns
 abstract (via SQL::Abstract)
 select, insert, update, delete (via SQL::Abstract)
 flat
 hashes
 map_arrays
 map

LICENSE

There is no license. This software was released into the public domain. Do with it what you want, but on your own risk. The author disclaims any responsibility.

AUTHOR

Juerd Waalboer <juerd@cpan.org> <http://juerd.nl/>

SEE ALSO

DBI, DBIx::Simple