my $errmsg = ''; my $sql = "INSERT INTO url (url, url_id) VALUES (?, ?)"; my @bind = ( 'blah.com', 3 ); $dbh->do($sql,{},@bind); if( $dbh->err ){ warn "INSERT url FAILED: " . $dbh->errstr; $errmsg = "There was an error adding the URL"; } #### if( $dbh->err ){ warn "INSERT url FAILED: " . $dbh->errstr; if( $dbh->err eq '123' ){ $errmsg = "Please fix ___ before adding the URL."; }elsif( $dbh->errstr =~ /not unique/ ){ $errmsg = "This URL already exists."; }else{ $errmsg = "There was an error adding the URL"; } } #### my $tmp_id = $dbh->selectrow_array("select url_id from url where url = ?",{},$url); if( $ct ){ $errmsg = "The URL '$url' already exists w/id=$tmp_id."; return; } ... INSERT INTO ...