mirror of
https://github.com/silverstripe/silverstripe-postgresql
synced 2024-10-22 17:05:45 +02:00
Merge pull request #99 from sminnee/fix-9097
FIX: Don’t drop first row on repeated iteration
This commit is contained in:
commit
f2ec228c72
@ -58,8 +58,10 @@ class PostgreSQLQuery extends Query
|
||||
|
||||
public function seek($row)
|
||||
{
|
||||
pg_result_seek($this->handle, $row);
|
||||
return $this->nextRecord();
|
||||
// Specifying the zero-th record here will reset the pointer
|
||||
$result = pg_fetch_array($this->handle, $row, PGSQL_NUM);
|
||||
|
||||
return $this->parseResult($result);
|
||||
}
|
||||
|
||||
public function numRecords()
|
||||
@ -73,6 +75,18 @@ class PostgreSQLQuery extends Query
|
||||
|
||||
// Correct non-string types
|
||||
if ($row) {
|
||||
return $this->parseResult($row);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $row
|
||||
* @return array
|
||||
*/
|
||||
protected function parseResult(array $row)
|
||||
{
|
||||
$record = [];
|
||||
|
||||
foreach ($row as $i => $v) {
|
||||
@ -92,7 +106,4 @@ class PostgreSQLQuery extends Query
|
||||
|
||||
return $record;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user