]> git.joonet.de Git - adminer.git/commitdiff
SQLite: Add command Check tables
authorJakub Vrana <jakub@vrana.cz>
Wed, 26 Feb 2025 09:18:15 +0000 (10:18 +0100)
committerJakub Vrana <jakub@vrana.cz>
Wed, 26 Feb 2025 11:20:36 +0000 (12:20 +0100)
adminer/db.inc.php
changes.txt

index 5cf3b8cd6edbcab1b9f31f13f95ed14ee4ae08c1..0799008de40b8ea5f5fc7c366997ffe76833662e 100644 (file)
@@ -27,6 +27,12 @@ if ($tables_views && !$error && !$_POST["search"]) {
                        $result = drop_tables($_POST["tables"]);
                }
                $message = lang('Tables have been dropped.');
+       } elseif ($jush == "sqlite" && $_POST["check"]) {
+               foreach ((array) $_POST["tables"] as $table) {
+                       foreach (get_rows("PRAGMA integrity_check(" . q($table) . ")") as $row) {
+                               $message .= "<b>" . h($table) . "</b>: " . h($row["integrity_check"]) . "<br>";
+                       }
+               }
        } elseif ($jush != "sql") {
                $result = ($jush == "sqlite"
                        ? queries("VACUUM")
@@ -127,9 +133,10 @@ if ($adminer->homepage()) {
                                $vacuum = "<input type='submit' value='" . lang('Vacuum') . "'> " . on_help("'VACUUM'");
                                $optimize = "<input type='submit' name='optimize' value='" . lang('Optimize') . "'> " . on_help($jush == "sql" ? "'OPTIMIZE TABLE'" : "'VACUUM OPTIMIZE'");
                                echo "<fieldset><legend>" . lang('Selected') . " <span id='selected'></span></legend><div>"
-                               . ($jush == "sqlite" ? $vacuum
+                               . ($jush == "sqlite" ? $vacuum . "<input type='submit' name='check' value='" . lang('Check') . "'> " . on_help("'PRAGMA integrity_check'")
                                : ($jush == "pgsql" ? $vacuum . $optimize
-                               : ($jush == "sql" ? "<input type='submit' value='" . lang('Analyze') . "'> " . on_help("'ANALYZE TABLE'") . $optimize
+                               : ($jush == "sql" ? "<input type='submit' value='" . lang('Analyze') . "'> " . on_help("'ANALYZE TABLE'")
+                                       . $optimize
                                        . "<input type='submit' name='check' value='" . lang('Check') . "'> " . on_help("'CHECK TABLE'")
                                        . "<input type='submit' name='repair' value='" . lang('Repair') . "'> " . on_help("'REPAIR TABLE'")
                                : "")))
index 46446d73d304b2e6c3c91e49de8708c34dc3096c..576139b853d7871cc42c7d49d658ecdcc5949afa 100644 (file)
@@ -1,4 +1,5 @@
 Adminer-4.17.2-dev:
+SQLite: Add command Check tables
 MongoDB: Remove support for deprecated extension mongo
 
 Adminer-4.17.1 (released 2025-02-25):