From: paca70 Date: Tue, 2 Dec 2003 15:42:33 +0000 (+0000) Subject: To fix postgresql 7.4 default values. X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=ce24824ebacbb95709260400e751efe24d1c4042;p=moodle.git To fix postgresql 7.4 default values. Starting with v. 7.4 postgres is returning default-values with datatype in form: 'default value'::data type This cannot be inserted back to database so DEFAULT keyword must be used. --- diff --git a/lib/datalib.php b/lib/datalib.php index f8e74f101c..38eec6ae01 100644 --- a/lib/datalib.php +++ b/lib/datalib.php @@ -765,13 +765,13 @@ function insert_record($table, $dataobject, $returnid=true) { if ($column->name <> "id") { if (isset($data[$column->name])) { if ((string)$data[$column->name] == "" and !empty($column->has_default) and !empty($column->default_value)) { - $ddd[$column->name] = $column->default_value; + $ddd[$column->name] = 'DEFAULT'; } else { $ddd[$column->name] = $data[$column->name]; } } else { if (!empty($column->has_default) and !empty($column->default_value)) { - $ddd[$column->name] = $column->default_value; + $ddd[$column->name] = 'DEFAULT'; } } } @@ -796,7 +796,7 @@ function insert_record($table, $dataobject, $returnid=true) { $select .= " AND "; } $inscolumns .= "$key"; - $insvalues .= "'$value'"; + $insvalues .= ($value != 'DEFAULT') ? "'$value'" : $value ; $select .= "$key = '$value'"; } }