generally agreed - but failing the hard way because of calling fetchAll() on false is ugly - throwing a proper exception because the return value is false is much cleaner