mirror of
				https://github.com/yiisoft/yii2.git
				synced 2025-11-04 06:37:55 +08:00 
			
		
		
		
	updated docs about deleteALl() and updateAll()
This commit is contained in:
		@ -190,12 +190,29 @@ class ActiveRecord extends BaseActiveRecord
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Updates the whole table using the provided attribute values and conditions.
 | 
					     * Updates the whole table using the provided attribute values and conditions.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
     * For example, to change the status to be 1 for all customers whose status is 2:
 | 
					     * For example, to change the status to be 1 for all customers whose status is 2:
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
     * ```php
 | 
					     * ```php
 | 
				
			||||||
     * Customer::updateAll(['status' => 1], 'status = 2');
 | 
					     * Customer::updateAll(['status' => 1], 'status = 2');
 | 
				
			||||||
     * ```
 | 
					     * ```
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
 | 
					     * > Warning: If you do not specify any condition, this method will update **all** rows in the table.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * Note that this method will not trigger any events. If you need [[EVENT_BEFORE_UPDATE]] or
 | 
				
			||||||
 | 
					     * [[EVENT_AFTER_UPDATE]] to be triggered, you need to [[find()|find]] the models first and then
 | 
				
			||||||
 | 
					     * call [[update()]] on each of them. For example an equivalent of the example above would be:
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * ```php
 | 
				
			||||||
 | 
					     * $models = Customer::find()->where('status = 2')->all();
 | 
				
			||||||
 | 
					     * foreach($models as $model) {
 | 
				
			||||||
 | 
					     *     $model->status = 1;
 | 
				
			||||||
 | 
					     *     $model->update(false); // skipping validation as no user input is involved
 | 
				
			||||||
 | 
					     * }
 | 
				
			||||||
 | 
					     * ```
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * For a large set of models you might consider using [[ActiveQuery::each()]] to keep memory usage within limits.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
     * @param array $attributes attribute values (name-value pairs) to be saved into the table
 | 
					     * @param array $attributes attribute values (name-value pairs) to be saved into the table
 | 
				
			||||||
     * @param string|array $condition the conditions that will be put in the WHERE part of the UPDATE SQL.
 | 
					     * @param string|array $condition the conditions that will be put in the WHERE part of the UPDATE SQL.
 | 
				
			||||||
     * Please refer to [[Query::where()]] on how to specify this parameter.
 | 
					     * Please refer to [[Query::where()]] on how to specify this parameter.
 | 
				
			||||||
@ -212,12 +229,15 @@ class ActiveRecord extends BaseActiveRecord
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Updates the whole table using the provided counter changes and conditions.
 | 
					     * Updates the whole table using the provided counter changes and conditions.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
     * For example, to increment all customers' age by 1,
 | 
					     * For example, to increment all customers' age by 1,
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
     * ```php
 | 
					     * ```php
 | 
				
			||||||
     * Customer::updateAllCounters(['age' => 1]);
 | 
					     * Customer::updateAllCounters(['age' => 1]);
 | 
				
			||||||
     * ```
 | 
					     * ```
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
 | 
					     * Note that this method will not trigger any events.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
     * @param array $counters the counters to be updated (attribute name => increment value).
 | 
					     * @param array $counters the counters to be updated (attribute name => increment value).
 | 
				
			||||||
     * Use negative values if you want to decrement the counters.
 | 
					     * Use negative values if you want to decrement the counters.
 | 
				
			||||||
     * @param string|array $condition the conditions that will be put in the WHERE part of the UPDATE SQL.
 | 
					     * @param string|array $condition the conditions that will be put in the WHERE part of the UPDATE SQL.
 | 
				
			||||||
@ -241,7 +261,6 @@ class ActiveRecord extends BaseActiveRecord
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Deletes rows in the table using the provided conditions.
 | 
					     * Deletes rows in the table using the provided conditions.
 | 
				
			||||||
     * WARNING: If you do not specify any condition, this method will delete ALL rows in the table.
 | 
					 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
     * For example, to delete all customers whose status is 3:
 | 
					     * For example, to delete all customers whose status is 3:
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
@ -249,6 +268,21 @@ class ActiveRecord extends BaseActiveRecord
 | 
				
			|||||||
     * Customer::deleteAll('status = 3');
 | 
					     * Customer::deleteAll('status = 3');
 | 
				
			||||||
     * ```
 | 
					     * ```
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
 | 
					     * > Warning: If you do not specify any condition, this method will delete **all** rows in the table.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * Note that this method will not trigger any events. If you need [[EVENT_BEFORE_DELETE]] or
 | 
				
			||||||
 | 
					     * [[EVENT_AFTER_DELETE]] to be triggered, you need to [[find()|find]] the models first and then
 | 
				
			||||||
 | 
					     * call [[delete()]] on each of them. For example an equivalent of the example above would be:
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * ```php
 | 
				
			||||||
 | 
					     * $models = Customer::find()->where('status = 3')->all();
 | 
				
			||||||
 | 
					     * foreach($models as $model) {
 | 
				
			||||||
 | 
					     *     $model->delete();
 | 
				
			||||||
 | 
					     * }
 | 
				
			||||||
 | 
					     * ```
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * For a large set of models you might consider using [[ActiveQuery::each()]] to keep memory usage within limits.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
     * @param string|array $condition the conditions that will be put in the WHERE part of the DELETE SQL.
 | 
					     * @param string|array $condition the conditions that will be put in the WHERE part of the DELETE SQL.
 | 
				
			||||||
     * Please refer to [[Query::where()]] on how to specify this parameter.
 | 
					     * Please refer to [[Query::where()]] on how to specify this parameter.
 | 
				
			||||||
     * @param array $params the parameters (name => value) to be bound to the query.
 | 
					     * @param array $params the parameters (name => value) to be bound to the query.
 | 
				
			||||||
@ -643,7 +677,7 @@ class ActiveRecord extends BaseActiveRecord
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Returns a value indicating whether the specified operation is transactional in the current [[scenario]].
 | 
					     * Returns a value indicating whether the specified operation is transactional in the current [[$scenario]].
 | 
				
			||||||
     * @param int $operation the operation to check. Possible values are [[OP_INSERT]], [[OP_UPDATE]] and [[OP_DELETE]].
 | 
					     * @param int $operation the operation to check. Possible values are [[OP_INSERT]], [[OP_UPDATE]] and [[OP_DELETE]].
 | 
				
			||||||
     * @return bool whether the specified operation is transactional in the current [[scenario]].
 | 
					     * @return bool whether the specified operation is transactional in the current [[scenario]].
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user