/** Get SQL command to create table
* @param string
+ * @param bool
* @return string
*/
- function create_sql($table) {
+ function create_sql($table, $auto_increment) {
global $connection;
- return $connection->result("SHOW CREATE TABLE " . table($table), 1);
+ $return = $connection->result("SHOW CREATE TABLE " . table($table), 1);
+ if (!$auto_increment) {
+ $return = preg_replace('~ AUTO_INCREMENT=[0-9]+~', '', $return); //! skip comments
+ }
+ return $return;
}
/** Get SQL command to truncate table
return true;
}
- function create_sql($table) {
+ function create_sql($table, $auto_increment) {
global $connection;
- return $connection->result("SELECT sql FROM sqlite_master WHERE type = 'table' AND name = " . $connection->quote($table));
+ return ($auto_increment || $table != "sqlite_sequence" //! remove also INSERT
+ ? $connection->result("SELECT sql FROM sqlite_master WHERE type = 'table' AND name = " . $connection->quote($table))
+ : ""
+ );
}
function truncate_sql($table) {
. (support("event") ? checkbox("events", 1, $checked, lang('Events')) : "")
);
echo "<tr><th>" . lang('Tables') . "<td>" . html_select('table_style', $table_style, $row["table_style"])
+ . checkbox("auto_increment", 1, $row["table_style"], lang('Auto Increment'))
. (support("trigger") ? checkbox("triggers", 1, $row["table_style"], lang('Triggers')) : "")
;
echo "<tr><th>" . lang('Data') . "<td>" . html_select('data_style', $data_style, $row["data_style"]);
dump_csv(array_keys(fields($table)));
}
} elseif ($style) {
- $create = create_sql($table);
+ $create = create_sql($table, $_POST["auto_increment"]);
if ($create) {
if ($style == "DROP+CREATE") {
echo "DROP " . ($is_view ? "VIEW" : "TABLE") . " IF EXISTS " . table($table) . ";\n";
Autofocus username in login form
Disable spellchecking in SQL textareas
Display auto_increment value of inserted item
+Allow disabling auto_increment value export
Link table names in SQL queries
Japanese translation
Defer table information in database overview to JavaScript (performance)