mirror of
https://github.com/vrana/adminer.git
synced 2025-08-12 17:44:07 +02:00
Fix alter table
This commit is contained in:
@@ -329,7 +329,7 @@ WHERE tc.constraint_type = 'FOREIGN KEY' AND tc.table_name = " . $connection->qu
|
|||||||
}
|
}
|
||||||
|
|
||||||
function auto_increment() {
|
function auto_increment() {
|
||||||
return true;
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
function alter_table($table, $name, $fields, $foreign, $comment, $engine, $collation, $auto_increment, $partitioning) {
|
function alter_table($table, $name, $fields, $foreign, $comment, $engine, $collation, $auto_increment, $partitioning) {
|
||||||
@@ -344,8 +344,8 @@ WHERE tc.constraint_type = 'FOREIGN KEY' AND tc.table_name = " . $connection->qu
|
|||||||
} else {
|
} else {
|
||||||
$val5 = $val[5];
|
$val5 = $val[5];
|
||||||
unset($val[5]);
|
unset($val[5]);
|
||||||
if ($val[6]) { // auto_increment
|
if (isset($val[6]) && $field[0] == "") { // auto_increment
|
||||||
$val = array($val[0], ($val[1] == "bigint" ? "big" : "") . "serial");
|
$val[1] = ($val[1] == "bigint" ? " big" : " ") . "serial";
|
||||||
}
|
}
|
||||||
if ($field[0] == "") {
|
if ($field[0] == "") {
|
||||||
$alter[] = ($table != "" ? "ADD " : " ") . implode("", $val);
|
$alter[] = ($table != "" ? "ADD " : " ") . implode("", $val);
|
||||||
@@ -353,14 +353,14 @@ WHERE tc.constraint_type = 'FOREIGN KEY' AND tc.table_name = " . $connection->qu
|
|||||||
if ($column != $val[0]) {
|
if ($column != $val[0]) {
|
||||||
$queries[] = "ALTER TABLE " . idf_escape($table) . " RENAME $column TO $val[0]";
|
$queries[] = "ALTER TABLE " . idf_escape($table) . " RENAME $column TO $val[0]";
|
||||||
}
|
}
|
||||||
$alter[] = "ALTER $column TYPE $val[1]";
|
$alter[] = "ALTER $column TYPE$val[1]";
|
||||||
if (!$val[6]) {
|
if (!$val[6]) {
|
||||||
$alter[] = "ALTER $column" . ($val[3] ? " SET$val[3]" : " DROP DEFAULT"); //! quoting
|
$alter[] = "ALTER $column " . ($val[3] ? "SET$val[3]" : "DROP DEFAULT"); //! quoting
|
||||||
$alter[] = "ALTER $column " . ($val[2] == " NULL" ? "DROP NOT" : "SET") . $val[2];
|
$alter[] = "ALTER $column " . ($val[2] == " NULL" ? "DROP NOT" : "SET") . $val[2];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ($table != "" || $val5 != "") {
|
if ($field[0] != "" || $val5 != "") {
|
||||||
$queries[] = "COMMENT ON COLUMN " . idf_escape($table) . ".$val[0] IS " . substr($val5, 9);
|
$queries[] = "COMMENT ON COLUMN " . idf_escape($table) . ".$val[0] IS " . ($val5 != "" ? substr($val5, 9) : "''");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -153,7 +153,7 @@ function process_field($field, $type_field) {
|
|||||||
(isset($field["default"]) ? " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP$", $field["default"]) ? $field["default"] : $connection->quote($field["default"])) : ""),
|
(isset($field["default"]) ? " DEFAULT " . ($field["type"] == "timestamp" && eregi("^CURRENT_TIMESTAMP$", $field["default"]) ? $field["default"] : $connection->quote($field["default"])) : ""),
|
||||||
($field["on_update"] ? " ON UPDATE $field[on_update]" : ""),
|
($field["on_update"] ? " ON UPDATE $field[on_update]" : ""),
|
||||||
(support("comment") && $field["comment"] != "" ? " COMMENT " . $connection->quote($field["comment"]) : ""),
|
(support("comment") && $field["comment"] != "" ? " COMMENT " . $connection->quote($field["comment"]) : ""),
|
||||||
($field["auto_increment"] ? auto_increment() : ""),
|
($field["auto_increment"] ? auto_increment() : null),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user