NAME DBIx::Sunny - Simple DBI wrapper SYNOPSIS use DBIx::Sunny; my $dbh = DBIx::Sunny->connect(...); # or use DBI; my $dbh = DBI->connect(.., { RootClass => 'DBIx::Sunny', PrintError => 0, RaiseError => 1, }); DESCRIPTION DBIx::Sunny is a simple DBI wrapper. It provides better usability for you. This module based on Amon2::DBI. DBIx::Sunny supports only SQLite and MySQL. FEATURES Set AutoInactiveDestroy to true. DBIx::Sunny sets AutoInactiveDestroy as true. [SQLite/MySQL] Auto encode/decode utf-8 DBIx::Sunny sets sqlite_unicode and mysql_enable_utf8 automatically. [SQLite] Performance tuning DBIx::Sunny sets sqlite_use_immediate_transaction to true, and executes these PRAGMA statements PRAGMA journal_mode = WAL PRAGMA synchronous = NORMAL Nested transaction management. DBIx::Sunny supports nested transaction management based on RAII like DBIx::Class or DBIx::Skinny. It uses DBIx::TransactionManager internally. Error Handling DBIx::Sunny sets RaiseError and ShowErrorStatement as true. DBIx::Sunny raises exception and shows current statement if your $dbh occurred exception. SQL comment DBIx::Sunny adds file name and line number as SQL comment that invokes SQL statement. Easy access to last_insert_id DBIx::Sunny's last_insert_id needs no arguments. It's shortcut for mysql_insertid or last_insert_rowid. Auto expanding arrayref bind parameters select_(one|row|all) and query methods support auto-expanding arrayref bind parameters. $dbh->select_all('SELECT * FROM id IN (?)', [1 2 3]) #SQL: 'SELECT * FROM id IN (?,?,")' #@BIND: (1, 2, 3) ADDITIONAL METHODS $col = $dbh->select_one($query, @bind); Shortcut for prepare, execute and fetchrow_arrayref->[0] $row = $dbh->select_row($query, @bind); Shortcut for prepare, execute and fetchrow_hashref $rows = $dbh->select_all($query, @bind); Shortcut for prepare, execute and selectall_arrayref(.., { Slice => {} }, ..) $dbh->query($query, @bind); Shortcut for prepare, execute. AUTHOR Masahiro Nagano SEE ALSO DBI, Amon2::DBI LICENSE Copyright (C) Masahiro Nagano This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.