]> git.mxchange.org Git - friendica.git/blobdiff - src/Console/DatabaseStructure.php
Merge remote-tracking branch 'upstream/develop' into item-view
[friendica.git] / src / Console / DatabaseStructure.php
index a1b4fdbfe8150b28a4d759e2e296ea33df2de822..343c90023d8bfad831f6bd3f6cac074c18a3da3e 100644 (file)
@@ -48,20 +48,25 @@ class DatabaseStructure extends \Asika\SimpleConsole\Console
                $help = <<<HELP
 console dbstructure - Performs database updates
 Usage
-       bin/console dbstructure <command> [-h|--help|-?] |-f|--force] [-v]
+       bin/console dbstructure <command> [options]
 
 Commands
-       dryrun   Show database update schema queries without running them
-       update   Update database schema
-       dumpsql  Dump database schema
-       toinnodb Convert all tables from MyISAM or InnoDB in the Antelope file format to InnoDB in the Barracuda file format
-       version  Set the database to a given number
+    drop     Show tables that aren't in use by Friendica anymore and can be dropped
+       -e|--execute    Execute the dropping
 
-Options
+    update   Update database schema
+       -f|--force      Force the update command (Even if the database structure matches)
+       -o|--override   Override running or stalling updates
+
+    dryrun   Show database update schema queries without running them
+    dumpsql  Dump database schema
+    toinnodb Convert all tables from MyISAM or InnoDB in the Antelope file format to InnoDB in the Barracuda file format
+    initial  Set needed initial values in the tables
+    version  Set the database to a given number
+
+General Options
     -h|--help|-?       Show help information
     -v                 Show more debug information.
-    -f|--force         Force the update command (Even if the database structure matches)
-    -o|--override      Override running or stalling updates
 HELP;
                return $help;
        }
@@ -108,6 +113,12 @@ HELP;
                                $override = $this->getOption(['o', 'override'], false);
                                $output = Update::run($basePath, $force, $override,true, false);
                                break;
+                       case "drop":
+                               $execute = $this->getOption(['e', 'execute'], false);
+                               ob_start();
+                               DBStructure::dropTables($execute);
+                               $output = ob_get_clean();
+                               break;
                        case "dumpsql":
                                ob_start();
                                DBStructure::printStructure($basePath);
@@ -123,12 +134,16 @@ HELP;
                                DBStructure::setDatabaseVersion($this->getArgument(1));
                                $output = ob_get_clean();
                                break;
-                                       
+                       case "initial":
+                               ob_start();
+                               DBStructure::checkInitialValues(true);
+                               $output = ob_get_clean();
+                               break;
                        default:
                                $output = 'Unknown command: ' . $this->getArgument(0);
                }
 
-               $this->out($output);
+               $this->out(trim($output));
 
                return 0;
        }