Server IP : 85.214.239.14 / Your IP : 3.12.165.68 Web Server : Apache/2.4.62 (Debian) System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.18 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /proc/3/root/usr/share/perl5/DBIx/Simple/ |
Upload File : |
=head1 NAME DBIx::Simple::Comparison - DBIx::Simple in DBI jargon =head1 DESCRIPTION This is just a simple and B<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. C<?> means that DBI doesn't have an equivalent or that I couldn't find one. C<=> means that DBIx::Simple provides a direct wrapper to the DBI function. C<~> 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.) =head2 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 =head2 Queries DBI my $sth = $dbh->prepare_cached($query); $sth->execute(@values); ~ DBIx::Simple my $result = $db->query($query, $values); =head2 Results DBI DBIx::Simple bind_columns ~ bind fetchrow_arrayref/fetch = fetch fetchrow_array ~ list *1 ~ flat [@{fetchrow_arrayref}] = array fetchall_arrayref ~ arrays fetchrow_hashref() *2*3 = hash fetchall_arrayref({}) *4 ~ hashes fetchall_hashref *2 = map_hashes ? ? map_arrays fetchall_hashref(1) *2 = map $sth->{NAME_lc/NAME} = $result->columns *1 There's no fetch variant, but you can do C<< { @{ $dbh->selectcol_arrayref('SELECT ...', { Slice => [] }) } } >>. *2 To receive the keys (column names) lowercased, use C<< $db->{FetchHashKeyName} = 'NAME_lc' >>. DBIx::Simple lower cases them by default. *3 Or supply an argument, C<'NAME_lc'>. *4 No, arrayref isn't a typo. When supplied an empty hash reference, DBI's fetchall_arrayref actually returns hashrefs. This DBI method does not support lower casing of keys, DBIx::Simple does. =head2 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 =head2 DBIx::Simple specific (?) keep_statements lc_columns iquery (via SQL::Interp) select, insert, update, delete (via SQL::Abstract) abstract (via SQL::Abstract) flat hashes map_arrays map =head1 AUTHOR Juerd Waalboer <juerd@cpan.org> <http://juerd.nl/> =head1 SEE ALSO L<DBI>, L<DBIx::Simple> =cut