my $dbh=DBI->connect("xxxx"); # My DB is SQLSERVER 2005 my $sth=$dbh->prepare(qq{ UPDATE tab SET d=? WHERE id=?}); for (my ($key,$val) = each %hash) { $sth->execute($hash{$key},$val); } $sth->finish; $dbh->disconnect;