Detect removed default (thanks to cvicebni ubor)
git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@1109 7c3ca157-0c34-0410-bff1-cbf682f78f5c
This commit is contained in:
parent
500a835e9d
commit
f92f2eefe4
|
@ -37,6 +37,9 @@ if ($_POST && !$error && !$_POST["add"] && !$_POST["drop_col"] && !$_POST["up"]
|
||||||
$type_field = (isset($types[$field["type"]]) ? $field : $referencable_primary[$foreign_keys[$field["type"]]]);
|
$type_field = (isset($types[$field["type"]]) ? $field : $referencable_primary[$foreign_keys[$field["type"]]]);
|
||||||
if (strlen($field["field"])) {
|
if (strlen($field["field"])) {
|
||||||
if ($type_field) {
|
if ($type_field) {
|
||||||
|
if (!$field["has_default"]) {
|
||||||
|
$field["default"] = null;
|
||||||
|
}
|
||||||
$process_field = process_field($field, $type_field);
|
$process_field = process_field($field, $type_field);
|
||||||
$auto_increment = ($key == $_POST["auto_increment_col"]);
|
$auto_increment = ($key == $_POST["auto_increment_col"]);
|
||||||
if ($process_field != process_field($orig_field, $orig_field) || $orig_field["auto_increment"] != $auto_increment) {
|
if ($process_field != process_field($orig_field, $orig_field) || $orig_field["auto_increment"] != $auto_increment) {
|
||||||
|
|
|
@ -124,7 +124,7 @@ function process_field($field, $type_field) {
|
||||||
global $dbh;
|
global $dbh;
|
||||||
return idf_escape($field["field"]) . process_type($type_field)
|
return idf_escape($field["field"]) . process_type($type_field)
|
||||||
. ($field["null"] ? " NULL" : " NOT NULL") // NULL for timestamp
|
. ($field["null"] ? " NULL" : " NOT NULL") // NULL for timestamp
|
||||||
. (!$field["has_default"] || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $field["default"]) ? $field["default"] : $dbh->quote($field["default"])))
|
. (!isset($field["default"]) || $field["auto_increment"] || ereg('text|blob', $field["type"]) ? "" : " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP( on update CURRENT_TIMESTAMP)?$", $field["default"]) ? $field["default"] : $dbh->quote($field["default"])))
|
||||||
. " COMMENT " . $dbh->quote($field["comment"])
|
. " COMMENT " . $dbh->quote($field["comment"])
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue