Now all the get_records() functions support only one field

to be specified in the SELECT clause. Not needed anymore to
write double "SELECT id, id..." queries. Results returned
follow exactly the same structure than normal recordsets
(first field = key) MDL-5877

Merged from MOODLE_17_STABLE
This commit is contained in:
stronk7
2006-11-04 17:01:34 +00:00
parent bb5b7329bb
commit 6c279afaef
+12
View File
@@ -695,6 +695,18 @@ function recordset_to_array($rs) {
$objects[$key] = (object) $record; /// To object
}
return $objects;
/// Fallback in case we only have 1 field in the recordset. MDL-5877
} else if ($rs->_numOfFields == 1 && $records = $rs->GetRows()) {
foreach ($records as $key => $record) {
/// Really DIRTY HACK for Oracle, but it's the only way to make it work
/// until we got all those NOT NULL DEFAULT '' out from Moodle
if ($CFG->dbtype == 'oci8po') {
array_walk($record, 'onespace2empty');
}
/// End of DIRTY HACK
$objects[$record[$firstcolumn->name]] = (object) $record; /// The key is the first column value (like Assoc)
}
return $objects;
} else {
return false;
}