$ sqlite3 test.db #### plugins: Database: driver: SQLite database: 'test.db' #### #!/usr/bin/env perl use strict; use warnings; use FindBin; use lib "$FindBin::Bin/../lib"; use TestApp; TestApp->to_app; #### package TestApp; use Dancer2; use Dancer2::Plugin::Database; hook 'database_error' => sub { my $err = shift; warn "\nThe DB error: `$err`"; }; get '/' => sub { eval { database->quick_insert('no_such_table', { foo => 'bar' }) }; 'Hello, world'; }; 1; #### HTTP::Server::PSGI: Accepting connections at http://0:5000/ [TestApp:4783] core @2018-09-23 09:52:38> looking for get / in /home/nick/perl5/perlbrew/perls/perl-5.28.0/lib/site_perl/5.28.0/Dancer2/Core/App.pm l. 36 [TestApp:4783] core @2018-09-23 09:52:38> Entering hook core.app.before_request in (eval 305) l. 1 [TestApp:4783] debug @2018-09-23 09:52:38> Adding sqlite_unicode to DBI connection params to enable UTF-8 support in /home/nick/perl5/perlbrew/perls/perl-5.28.0/lib/site_perl/5.28.0/Dancer2/Plugin.pm l. 543 [TestApp:4783] core @2018-09-23 09:52:38> Entering hook plugin.database.database_connected in (eval 305) l. 1 [TestApp:4783] core @2018-09-23 09:52:38> Entering hook plugin.database.database_error in (eval 305) l. 1 The DB error: `DBD::SQLite::db do failed: no such table: no_such_table` at /home/nick/dev/TestApp/bin/../lib/TestApp.pm line 11. DBD::SQLite::db do failed: no such table: no_such_table at /home/nick/perl5/perlbrew/perls/perl-5.28.0/lib/site_perl/5.28.0/Dancer/Plugin/Database/Core/Handle.pm line 310. ...