Thread: [adminer-svn] SF.net SVN: adminer:[1085] trunk/adminer/create.inc.php
Database management in a single PHP file
Brought to you by:
jakubvrana
From: <jak...@us...> - 2009-09-10 15:37:19
|
Revision: 1085 http://adminer.svn.sourceforge.net/adminer/?rev=1085&view=rev Author: jakubvrana Date: 2009-09-10 15:37:11 +0000 (Thu, 10 Sep 2009) Log Message: ----------- Always set $auto_increment_index Modified Paths: -------------- trunk/adminer/create.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-09-10 14:25:21 UTC (rev 1084) +++ trunk/adminer/create.inc.php 2009-09-10 15:37:11 UTC (rev 1085) @@ -18,13 +18,11 @@ if ($_POST && !$error && !$_POST["add"] && !$_POST["drop_col"] && !$_POST["up"] && !$_POST["down"]) { $auto_increment_index = " PRIMARY KEY"; // don't overwrite primary key by auto_increment - if (strlen($TABLE) && strlen($_POST["fields"][$_POST["auto_increment_col"]]["orig"])) { + if (strlen($TABLE) && $_POST["auto_increment_col"]) { foreach (indexes($TABLE) as $index) { - foreach ($index["columns"] as $column) { - if ($column === $_POST["fields"][$_POST["auto_increment_col"]]["orig"]) { - $auto_increment_index = ""; - break 2; - } + if (in_array($_POST["fields"][$_POST["auto_increment_col"]]["orig"], $index["columns"], true)) { + $auto_increment_index = ""; + break; } if ($index["type"] == "PRIMARY") { $auto_increment_index = " UNIQUE"; @@ -51,6 +49,7 @@ } } $after = "AFTER " . idf_escape($field["field"]); + //! drop and create foreign keys with renamed columns } elseif (strlen($field["orig"])) { $fields .= "\nDROP " . idf_escape($field["orig"]) . ","; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-11 19:12:45
|
Revision: 1095 http://adminer.svn.sourceforge.net/adminer/?rev=1095&view=rev Author: jakubvrana Date: 2009-09-11 19:12:33 +0000 (Fri, 11 Sep 2009) Log Message: ----------- Add foreign key even if a field not changed Modified Paths: -------------- trunk/adminer/create.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-09-11 18:53:39 UTC (rev 1094) +++ trunk/adminer/create.inc.php 2009-09-11 19:12:33 UTC (rev 1095) @@ -36,14 +36,16 @@ foreach ($_POST["fields"] as $key => $field) { $type_field = (isset($types[$field["type"]]) ? $field : $referencable_primary[$foreign_keys[$field["type"]]]); if (strlen($field["field"])) { - $process_field = process_field($field, $type_field); - $auto_increment = ($key == $_POST["auto_increment_col"]); - if ($type_field && ($process_field != process_field($orig_field, $orig_field) || $orig_field["auto_increment"] != $auto_increment)) { - $fields .= "\n" . (strlen($TABLE) ? (strlen($field["orig"]) ? "CHANGE " . idf_escape($field["orig"]) : "ADD") : " ") - . " $process_field" - . ($auto_increment ? " AUTO_INCREMENT$auto_increment_index" : "") - . (strlen($TABLE) ? " $after" : "") . "," - ; + if ($type_field) { + $process_field = process_field($field, $type_field); + $auto_increment = ($key == $_POST["auto_increment_col"]); + if ($process_field != process_field($orig_field, $orig_field) || $orig_field["auto_increment"] != $auto_increment) { + $fields .= "\n" . (strlen($TABLE) ? (strlen($field["orig"]) ? "CHANGE " . idf_escape($field["orig"]) : "ADD") : " ") + . " $process_field" + . ($auto_increment ? " AUTO_INCREMENT$auto_increment_index" : "") + . (strlen($TABLE) ? " $after" : "") . "," + ; + } if (!isset($types[$field["type"]])) { $fields .= (strlen($TABLE) ? " ADD" : "") . " FOREIGN KEY (" . idf_escape($field["field"]) . ") REFERENCES " . idf_escape($foreign_keys[$field["type"]]) . " (" . idf_escape($type_field["field"]) . "),"; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-13 22:18:05
|
Revision: 1105 http://adminer.svn.sourceforge.net/adminer/?rev=1105&view=rev Author: jakubvrana Date: 2009-09-13 22:17:56 +0000 (Sun, 13 Sep 2009) Log Message: ----------- Case of engine may differ (thanks to LuKo) Modified Paths: -------------- trunk/adminer/create.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-09-12 20:18:37 UTC (rev 1104) +++ trunk/adminer/create.inc.php 2009-09-13 22:17:56 UTC (rev 1105) @@ -140,6 +140,13 @@ if ($suhosin && count($row["fields"]) > $suhosin) { echo "<p class='error'>" . h(lang('Maximum number of allowed fields exceeded. Please increase %s and %s.', 'suhosin.post.max_vars', 'suhosin.request.max_vars')) . "\n"; } +// case of engine may differ +foreach ($engines as $engine) { + if (!strcasecmp($engine, $row["Engine"])) { + $row["Engine"] = $engine; + break; + } +} ?> <form action="" method="post" id="form"> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-09-20 21:19:47
|
Revision: 1121 http://adminer.svn.sourceforge.net/adminer/?rev=1121&view=rev Author: jakubvrana Date: 2009-09-20 21:19:35 +0000 (Sun, 20 Sep 2009) Log Message: ----------- Indent add foreign key Modified Paths: -------------- trunk/adminer/create.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-09-20 07:57:15 UTC (rev 1120) +++ trunk/adminer/create.inc.php 2009-09-20 21:19:35 UTC (rev 1121) @@ -50,7 +50,7 @@ ; } if (!isset($types[$field["type"]])) { - $fields .= (strlen($TABLE) ? " ADD" : "") . " FOREIGN KEY (" . idf_escape($field["field"]) . ") REFERENCES " . idf_escape($foreign_keys[$field["type"]]) . " (" . idf_escape($type_field["field"]) . "),"; + $fields .= (strlen($TABLE) ? "\nADD" : "") . " FOREIGN KEY (" . idf_escape($field["field"]) . ") REFERENCES " . idf_escape($foreign_keys[$field["type"]]) . " (" . idf_escape($type_field["field"]) . "),"; } } $after = "AFTER " . idf_escape($field["field"]); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-10-03 10:29:05
|
Revision: 1158 http://adminer.svn.sourceforge.net/adminer/?rev=1158&view=rev Author: jakubvrana Date: 2009-10-01 12:49:37 +0000 (Thu, 01 Oct 2009) Log Message: ----------- Auto_increment may be biginit (bug #2871284) Modified Paths: -------------- trunk/adminer/create.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-10-01 10:02:11 UTC (rev 1157) +++ trunk/adminer/create.inc.php 2009-10-01 12:49:37 UTC (rev 1158) @@ -65,7 +65,7 @@ $status = "COMMENT=" . $connection->quote($_POST["Comment"]) . ($_POST["Engine"] && $_POST["Engine"] != $orig_status["Engine"] ? " ENGINE=" . $connection->quote($_POST["Engine"]) : "") . ($_POST["Collation"] && $_POST["Collation"] != $orig_status["Collation"] ? " COLLATE " . $connection->quote($_POST["Collation"]) : "") - . (strlen($_POST["auto_increment"]) ? " AUTO_INCREMENT=" . intval($_POST["auto_increment"]) : "") + . (strlen($_POST["auto_increment"]) ? " AUTO_INCREMENT=" . preg_replace('~[^0-9]+~', '', $_POST["auto_increment"]) : "") ; if (in_array($_POST["partition_by"], $partition_by)) { $partitions = array(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2009-10-27 15:23:01
|
Revision: 1216 http://adminer.svn.sourceforge.net/adminer/?rev=1216&view=rev Author: jakubvrana Date: 2009-10-27 15:22:53 +0000 (Tue, 27 Oct 2009) Log Message: ----------- Spaces Modified Paths: -------------- trunk/adminer/create.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2009-10-26 16:13:42 UTC (rev 1215) +++ trunk/adminer/create.inc.php 2009-10-27 15:22:53 UTC (rev 1216) @@ -155,8 +155,8 @@ <p> <?php echo lang('Table name'); ?>: <input name="name" maxlength="64" value="<?php echo h($row["name"]); ?>"> <?php echo ($engines ? html_select("Engine", array("" => "(" . lang('engine') . ")") + $engines, $row["Engine"]) : ""); ?> -<?php echo html_select("Collation", array("" => "(" . lang('collation') . ")") + $collations, $row["Collation"]); ?> -<input type="submit" value="<?php echo lang('Save'); ?>"> + <?php echo html_select("Collation", array("" => "(" . lang('collation') . ")") + $collations, $row["Collation"]); ?> + <input type="submit" value="<?php echo lang('Save'); ?>"> </p> <table cellspacing="0" id="edit-fields"> <?php $column_comments = edit_fields($row["fields"], $collations, "TABLE", $suhosin, $foreign_keys); ?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2010-02-24 10:39:50
|
Revision: 1324 http://adminer.svn.sourceforge.net/adminer/?rev=1324&view=rev Author: jakubvrana Date: 2010-02-24 10:39:44 +0000 (Wed, 24 Feb 2010) Log Message: ----------- Minimize Partition by Modified Paths: -------------- trunk/adminer/create.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2010-02-19 14:33:49 UTC (rev 1323) +++ trunk/adminer/create.inc.php 2010-02-24 10:39:44 UTC (rev 1324) @@ -177,8 +177,8 @@ <?php if ($connection->server_info >= 5.1) { $partition_table = ereg('RANGE|LIST', $row["partition_by"]); + print_fieldset("partition", lang('Partition by'), $row["partition_by"]); ?> -<fieldset><legend><?php echo lang('Partition by'); ?></legend> <p> <?php echo html_select("partition_by", array(-1 => "") + $partition_by, $row["partition_by"], "partitionByChange(this);"); ?> (<input name="partition" value="<?php echo h($row["partition"]); ?>">) @@ -193,6 +193,6 @@ } ?> </table> -</fieldset> +</div></fieldset> <?php } ?> </form> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jak...@us...> - 2010-04-27 15:56:19
|
Revision: 1504 http://adminer.svn.sourceforge.net/adminer/?rev=1504&view=rev Author: jakubvrana Date: 2010-04-27 15:56:13 +0000 (Tue, 27 Apr 2010) Log Message: ----------- Respect partitioning support (thanks to paranoiq) Modified Paths: -------------- trunk/adminer/create.inc.php Modified: trunk/adminer/create.inc.php =================================================================== --- trunk/adminer/create.inc.php 2010-04-27 14:20:27 UTC (rev 1503) +++ trunk/adminer/create.inc.php 2010-04-27 15:56:13 UTC (rev 1504) @@ -68,7 +68,7 @@ ? " (" . implode(",", $partitions) . "\n)" : ($_POST["partitions"] ? " PARTITIONS " . intval($_POST["partitions"]) : "") ); - } elseif ($TABLE != "") { + } elseif ($TABLE != "" && support("partitioning")) { $partitioning .= "\nREMOVE PARTITIONING"; } $message = lang('Table has been altered.'); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |