DBD-SQLite

 view release on metacpan or  search on metacpan

t/36_hooks.t  view on Meta::CPAN

use SQLiteTest;
use Test::More;
use if -d ".git", "Test::FailWarnings";

use DBD::SQLite;

# hooks : just count the commits / rollbacks / updates
my ($n_commits, $n_rollbacks, $n_updates, @update_args);
sub commit_hook   {  $n_commits   += 1; return 0; }
sub rollback_hook {  $n_rollbacks += 1; return 0; }
sub update_hook   {  $n_updates   += 1; 
                     @update_args  = @_;          }

my $sql_count_rows = "SELECT COUNT(foo) FROM hook_test";

foreach my $call_func (@CALL_FUNCS) {

  # connect 
  my $dbh = connect_ok( RaiseError => 1 );
  $dbh->do( 'CREATE TEMP TABLE hook_test ( foo )' );

t/39_foreign_keys.t  view on Meta::CPAN

ok update_track(3, "Mr. Bojangles");

# Now that "Sammy Davis Jr." (artistid = 3) has been added to the
# database, it is possible to INSERT new tracks using this artist
# without violating the foreign key constraint:

ok insert_track(15, "Boogie Woogie", 3);

sub insert_artist { _do("INSERT INTO artist (artistid, artistname) VALUES (?, ?)", @_ ); }
sub insert_track {  _do("INSERT INTO track (trackid, trackname, trackartist) VALUES (?, ?, ?)", @_); }
sub update_track {  _do("UPDATE track SET trackartist = ? WHERE trackname = ?", @_); }

sub _do { eval { $dbh->do(shift, undef, @_) }; }

done_testing;

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 1.112 second using v1.00-cache-2.02-grep-82fe00e-cpan-4673cadbf75 )