Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SPOPS::Import::DBI::UpUser(Contributed Perl DocumSPOPS::Import::DBI::Update(3)

NAME
       SPOPS::Import::DBI::Update - Update existing data in a DBI table

SYNOPSIS
	#!/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( 'dbupdate' );
	    $importer->db( $dbh	);
	    $importer->table( 'import' );

	    # Set the update fields individually...
	    $importer->field( [	'foo', 'bar', 'baz' ] );
	    $importer->field_value( [ 'fooval',	'barval', 'bazval' ] );

	    # ...or all	at once
	    $importer->set_update_data({
		foo => 'fooval',
		bar => 'barval',
		baz => 'bazval',
	    });

	    $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;
       }

DESCRIPTION
       This importer updates existing data in 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...

   Return from run()
       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 updated -- 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.)

ADDITIONAL ACTIONS
   Methods
       set_update_data(	\%fields_and_values )

       Instead of setting the fields and values	with the properties field and
       field_value, respectively, you can set them all at once with a more
       natural hash reference.

   Properties
       field

       Arrayref	of fields to update

       field_value

       Arrayref	of values to update in the same	order as field.

SEE ALSO
       SPOPS::Import::DBI::GenericOperation

COPYRIGHT
       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.

AUTHORS
       Chris Winters <chris@cwinters.com>

perl v5.32.1			  2004-06-01	 SPOPS::Import::DBI::Update(3)

NAME | SYNOPSIS | DESCRIPTION | ADDITIONAL ACTIONS | SEE ALSO | COPYRIGHT | AUTHORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=SPOPS::Import::DBI::Update&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help