$dbh->do('insert into foo values (x,y,z)'); if ($dbh->err && $dbh->err == 1062) { # we've got a duplicate } #### $dbh->do('replace foo values (x,y,z)');