Enhancement to support returned results from update query

This commit is contained in:
Colm McBarron 2017-02-16 11:33:51 +00:00
parent 6f4dc4d8d2
commit d2bb29938d

View File

@ -15,7 +15,7 @@ class PostgreSQLQueryBuilder extends DBQueryBuilder {
// Ensure limit is given
$limit = $query->getLimit();
if(empty($limit)) return '';
// For literal values return this as the limit SQL
if( ! is_array($limit)) {
return "{$nl}LIMIT $limit";
@ -31,7 +31,7 @@ class PostgreSQLQueryBuilder extends DBQueryBuilder {
if($limit['limit'] === null) {
$limit['limit'] = 'ALL';
}
$clause = "{$nl}LIMIT {$limit['limit']}";
if(isset($limit['start']) && is_numeric($limit['start']) && $limit['start'] !== 0) {
$clause .= " OFFSET {$limit['start']}";
@ -39,4 +39,17 @@ class PostgreSQLQueryBuilder extends DBQueryBuilder {
return $clause;
}
/**
* Adds a specific PostgreSQL command that returns the affected rows when the 'Update' query is run
*
* @param SQLUpdate $query
* @param array $parameters
* @return string
*/
protected function buildUpdateQuery(SQLUpdate $query, array &$parameters) {
$sql = parent::buildUpdateQuery($query, $parameters);
$sql .= ' RETURNING *';
return $sql;
}
}