$DBI->do("blah"); if ($DBI->err) { print "Error: ", $DBI->errstr, "\n"; } #### foreach (@STRUCTURE) { push @list, "$_ = ?"; push @vals, $impl->{$_}->{value}; } my $string = join ",",@list; $DBH->do(qq{ UPDATE $TABLENAME SET $string WHERE $KEY=? LIMIT 1 }, undef, @vals, $keyval);