/** * @see ResultSet::__construct() */ public function __construct(Connection $conn, $result, $fetchmode = null) { parent::__construct($conn, $result, $fetchmode); /** * Some ODBC drivers appear not to handle odbc_num_rows() very well when * more than one result handle is active at once. For example, the MySQL * ODBC driver always returns the number of rows for the last executed * result. For this reason, we'll store the row count here. */ $this->numRows = @odbc_num_rows($result->getHandle()); if ($this->numRows == -1) { throw new SQLException('Error getting record count', $conn->nativeError()); } }
/** * @see ResultSet::__construct() */ public function __construct(Connection $conn, $result, $fetchmode = null) { parent::__construct($conn, $result, $fetchmode); /** * Some ODBC drivers appear not to handle odbc_num_rows() very well when * more than one result handle is active at once. For example, the MySQL * ODBC driver always returns the number of rows for the last executed * result. For this reason, we'll store the row count here. * * Note also that many ODBC drivers do not support this method. In this * case, getRecordCount() will perform a manual count. */ $this->numRows = @odbc_num_rows($result->getHandle()); $this->hasRowCount = $this->numRows != -1; }
/** * @see ResultSet::__construct() */ public function __construct(Connection $conn, $result, $fetchmode = null, $cacheLobs = false) { parent::__construct($conn, $result, $fetchmode); $this->cacheLobs = $cacheLobs; }