@Override
    public boolean remove(int codigo) {
        boolean status = false;
        Connection con = null;
        PreparedStatement pstm = null;
        try {
            con = ConnectionFactory.getConnection();
            pstm = con.prepareStatement(REMOVE);
            pstm.setInt(1, codigo);
            pstm.execute();
            status = true;
        } catch (SQLException ex) {

            String var = "com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Cannot delete or update a parent row: a foreign key constraint fails (`agendamento_medico`.`consulta`, CONSTRAINT `paciente_fk` FOREIGN KEY (`codigo_paciente`) REFERENCES `paciente` (`codigo`) ON DELETE NO ACTION ON UPDATE NO ACTION)";
            if(ex.toString().equals(var)){
                JOptionPane.showMessageDialog(null, "Erro ao remover, você está usando a sua referencia na agenda");
            } else {
                JOptionPane.showMessageDialog(null, "Erro ao excluir paciente: " + ex.getMessage());
                System.out.println("Erro ao remover:" + ex + ":");
            }
        } finally {
            try {
                ConnectionFactory.closeConnection(con, pstm);
            } catch (Exception e) {
                JOptionPane.showMessageDialog(null, "Erro ao fechar a conexão do remove:" + e.getMessage());
            }
        }
        return status;
    }