SPOPS::Import::DBI::Delete - Delete existing data from a DBI table
#!/usr/bin/perl
use strict;
use DBI;
use SPOPS::Import;
{
my $dbh = DBI->connect( 'DBI:Pg:dbname=test' );
$dbh->{RaiseError} = 1;
my $importer = SPOPS::Import->new( 'dbdelete' );
$importer->db( $dbh );
$importer->table( 'import' );
$importer->where( 'name like ?' );
$importer->add_where_params( "%foo" );
my $status = $importer->run;
foreach my $entry ( @{ $status } ) {
if ( $entry->[0] ) { print "$entry->[1][0]: OK\n" }
else { print "$entry->[1][0]: FAIL ($entry->[2])\n" }
}
$dbh->disconnect;
}
This importer deletes existing data from a DBI table.
This may seem out of place in the SPOPS::Import hierarchy, but not
if you think of importing in the more abstract manner of manipulating data
in the database rather than getting data out of it...
The return value from "run()" will be a single
arrayref within the status arrayref. As with other importers the first value
will be true if the operation succeeded, false if not. The one difference is
that on success the second value will be the number of records removed -- this
may be '0' if your WHERE clause did not match anything. (The third value in
the arrayref will be the error message on failure.)
Copyright (c) 2004 intes.net, inc.. All rights reserved.
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
Chris Winters <chris@cwinters.com>