/** * Used to modify the behavior of a prepared statement * @link http://www.php.net/manual/en/mysqli-stmt.attr-set.php * @param attr int <p> * The attribute that you want to set. It can have one of the following values: * <table> * Attribute values * <tr valign="top"> * <td>Character</td> * <td>Description</td> * </tr> * <tr valign="top"> * <td>MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH</td> * <td> * If set to 1, causes mysqli_stmt_store_result to * update the metadata MYSQL_FIELD->max_length value. * </td> * </tr> * <tr valign="top"> * <td>MYSQLI_STMT_ATTR_CURSOR_TYPE</td> * <td> * Type of cursor to open for statement when mysqli_stmt_execute * is invoked. mode can be MYSQLI_CURSOR_TYPE_NO_CURSOR * (the default) or MYSQLI_CURSOR_TYPE_READ_ONLY. * </td> * </tr> * <tr valign="top"> * <td>MYSQLI_STMT_ATTR_PREFETCH_ROWS</td> * <td> * Number of rows to fetch from server at a time when using a cursor. * mode can be in the range from 1 to the maximum * value of unsigned long. The default is 1. * </td> * </tr> * </table> * </p> * <p> * If you use the MYSQLI_STMT_ATTR_CURSOR_TYPE option with * MYSQLI_CURSOR_TYPE_READ_ONLY, a cursor is opened for the * statement when you invoke mysqli_stmt_execute. If there * is already an open cursor from a previous mysqli_stmt_execute call, * it closes the cursor before opening a new one. mysqli_stmt_reset * also closes any open cursor before preparing the statement for re-execution. * mysqli_stmt_free_result closes any open cursor. * </p> * <p> * If you open a cursor for a prepared statement, mysqli_stmt_store_result * is unnecessary. * </p> * @param mode int <p>The value to assign to the attribute.</p> * @return bool */ public function attrSet($attr, $mode) { return $this->stmt->attr_set($attr, $mode); }