Ejecución de PDO de PHP () vs. fetch ()?

Tengo una pregunta rápida que espero tenga una respuesta rápida y clara.

En el manual de php.com, indica que la ejecución () después de vincular los valores a una consulta preparada devolverá verdadero en caso de éxito y falso en caso de error. Suficientemente simple.

Solo quería asegurarme de tener esto claro. Los valores devueltos en execute () corresponden a errores directos. Por ejemplo, si la base de datos de alguna manera se descompuso después de una conexión exitosa, y la consulta no pudo ejecutarse, o algún otro problema extraordinario.

Considere algún código:

    protected function territoryCheck($numberOut)
    {
        $this->numberOut = $numberOut;

        //Execute test
        $this->checkConnect();
        $stmt = $this->dbh->prepare("SELECT t_id FROM Territory WHERE t_id = :param1")
        $stmt->bindParam(':param1', $this->numberOut);
        $stmt->execute();

        //Determine value of test
        if($stmt == FALSE)
        {
            return FALSE;
        }   
    }

Estoy bastante seguro de que esto no funcionará como quiero. El punto es ver si t_id existe en la base de datos en función de si hay un valor correspondiente al parámetro. En ese caso, necesito usar $ stmt-> fetch (). ¿Estoy en lo correcto al decir eso?

Cualquier ayuda es apreciada.

Edit: En la misma línea, ¿sería prudente, o debería decir buenas prácticas, poner

//Execute test
        $this->checkConnect();
        $stmt = $this->dbh->prepare("SELECT t_id FROM Territory WHERE t_id = :param1")
        $stmt->bindParam(':param1', $this->numberOut);
        $stmt->execute();

dentro de un try-catch desde PDO devuelve excepciones?

Respuestas a la pregunta(1)

Su respuesta a la pregunta