MDL-59583 dml: fixed NULL values w/ MariaDB 10.2.7+

This commit is contained in:
Matteo Scaramuccia 2017-08-03 00:13:03 +02:00
parent 0510d5c757
commit 2ec50fe3fd

View file

@ -804,10 +804,13 @@ class mysqli_native_moodle_database extends moodle_database {
$info->meta_type = $this->mysqltype2moodletype($rawcolumn->data_type); $info->meta_type = $this->mysqltype2moodletype($rawcolumn->data_type);
if ($this->has_breaking_change_quoted_defaults()) { if ($this->has_breaking_change_quoted_defaults()) {
$info->default_value = trim($rawcolumn->column_default, "'"); $info->default_value = trim($rawcolumn->column_default, "'");
if ($info->default_value === 'NULL') {
$info->default_value = null;
}
} else { } else {
$info->default_value = $rawcolumn->column_default; $info->default_value = $rawcolumn->column_default;
} }
$info->has_default = !is_null($rawcolumn->column_default); $info->has_default = !is_null($info->default_value);
$info->not_null = ($rawcolumn->is_nullable === 'NO'); $info->not_null = ($rawcolumn->is_nullable === 'NO');
$info->primary_key = ($rawcolumn->column_key === 'PRI'); $info->primary_key = ($rawcolumn->column_key === 'PRI');
$info->binary = false; $info->binary = false;