Class yii\db\BatchQueryResult
继承 | yii\db\BatchQueryResult » yii\base\BaseObject |
---|---|
实现 | Iterator, yii\base\Configurable |
可用版本自 | 2.0 |
源码 | https://github.com/yiichina/yii2/blob/api/framework/db/BatchQueryResult.php |
BatchQueryResult 表示批量查询,你可以从中批量检索数据。
通常不直接实例化 BatchQueryResult。相反, 你可以通过调用 yii\db\Query::batch() 或 yii\db\Query::each()。因为 BatchQueryResult 实现了 Iterator 接口, 所以可以对其进行迭代,以在每次迭代中获取一批数据。例如,
$query = (new Query)->from('user');
foreach ($query->batch() as $i => $users) {
// $users represents the rows in the $i-th batch
}
foreach ($query->each() as $user) {
}
公共属性
属性 | 类型 | 描述 | 被定义在 |
---|---|---|---|
$batchSize | integer | 每批返回的行数。 | yii\db\BatchQueryResult |
$db | yii\db\Connection | 执行批处理查询时要使用的数据库连接。 如果为 null,将使用 "db" 应用程序组件。 | yii\db\BatchQueryResult |
$each | boolean | 是否在每次迭代期间返回一行。 如果为 false,每次迭代将返回整批行。 | yii\db\BatchQueryResult |
$query | yii\db\Query | 与批处理查询关联的查询对象。 除非显式调用 reset() 之后,否则不要直接修改此属性。 | yii\db\BatchQueryResult |
公共方法
方法 | 描述 | 被定义在 |
---|---|---|
__call() | Calls the named method which is not a class method. | yii\base\BaseObject |
__construct() | Constructor. | yii\base\BaseObject |
__destruct() | Destructor. | yii\db\BatchQueryResult |
__get() | Returns the value of an object property. | yii\base\BaseObject |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\base\BaseObject |
__set() | Sets value of an object property. | yii\base\BaseObject |
__unset() | Sets an object property to null. | yii\base\BaseObject |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\BaseObject |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\BaseObject |
className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
current() | 返回当前数据集。 此方法是接口 Iterator 所必需的。 | yii\db\BatchQueryResult |
hasMethod() | Returns a value indicating whether a method is defined. | yii\base\BaseObject |
hasProperty() | Returns a value indicating whether a property is defined. | yii\base\BaseObject |
init() | Initializes the object. | yii\base\BaseObject |
key() | 返回当前数据集的索引。 此方法是接口 Iterator 所必需的。 | yii\db\BatchQueryResult |
next() | 将内部指针移动到下一个数据集。 此方法是接口 Iterator 所必需的。 | yii\db\BatchQueryResult |
reset() | 重置批处理查询。 此方法将清除现有的批查询,以便执行新的批查询。 | yii\db\BatchQueryResult |
rewind() | 将迭代器重置为初始状态。 此方法是接口 Iterator 所必需的。 | yii\db\BatchQueryResult |
valid() | 返回当前位置是否存在有效的数据集。 此方法是接口 Iterator 所必需的。 | yii\db\BatchQueryResult |
属性详情
每批返回的行数。
执行批处理查询时要使用的数据库连接。 如果为 null,将使用 "db" 应用程序组件。
是否在每次迭代期间返回一行。 如果为 false,每次迭代将返回整批行。
与批处理查询关联的查询对象。 除非显式调用 reset() 之后,否则不要直接修改此属性。
方法详情
Destructor.
public void __destruct() |
返回当前数据集。 此方法是接口 Iterator 所必需的。
public mixed current() | ||
return | mixed | 当前数据集。 |
---|
获取下一批数据。
protected array fetchData() | ||
return | array | 获取的数据 |
---|
返回当前数据集的索引。 此方法是接口 Iterator 所必需的。
public integer key() | ||
return | integer | 当前行的索引。 |
---|
将内部指针移动到下一个数据集。 此方法是接口 Iterator 所必需的。
public void next() |
重置批处理查询。 此方法将清除现有的批查询,以便执行新的批查询。
public void reset() |
将迭代器重置为初始状态。 此方法是接口 Iterator 所必需的。
public void rewind() |
返回当前位置是否存在有效的数据集。 此方法是接口 Iterator 所必需的。
public boolean valid() | ||
return | boolean | 当前位置是否存在有效的数据集。 |
---|