hasType does `isset(self::$_typesMap[$name])` whereas getType `throw DBALException::unknownColumnType($name)` if it's not found, so I guess the check is necessary and it will not fail if the type is not found.