added increment method to query builder.

This commit is contained in:
Taylor Otwell 2011-10-12 21:27:29 -05:00
parent 68455378cc
commit 559785f168
2 changed files with 16 additions and 4 deletions

View File

@ -325,7 +325,7 @@ public function delete(Query $query)
* @param array $columns
* @return string
*/
protected function columnize($columns)
public function columnize($columns)
{
return implode(', ', array_map(array($this, 'wrap'), $columns));
}
@ -340,7 +340,7 @@ protected function columnize($columns)
* @param string $value
* @return string
*/
protected function wrap($value)
public function wrap($value)
{
if (strpos(strtolower($value), ' as ') !== false) return $this->alias($value);
@ -376,7 +376,7 @@ protected function alias($value)
* @param array $values
* @return string
*/
protected function parameterize($values)
public function parameterize($values)
{
return implode(', ', array_map(array($this, 'parameter'), $values));
}
@ -391,7 +391,7 @@ protected function parameterize($values)
* @param mixed $value
* @return string
*/
protected function parameter($value)
public function parameter($value)
{
return ($value instanceof Expression) ? $value->get() : '?';
}

View File

@ -581,6 +581,18 @@ public function insert_get_id($values, $sequence = null)
return (int) $this->connection->pdo->lastInsertId($sequence);
}
/**
* Increment the value of a column by a given amount.
*
* @param string $column
* @param int $amount
* @return int
*/
public function increment($column, $amount = 1)
{
return $this->update(array($column => Manager::raw($this->grammar->wrap($column).' + '.$amount)));
}
/**
* Update an array of values in the database table.
*