diff --git a/adminer/drivers/mssql.inc.php b/adminer/drivers/mssql.inc.php index ef03c854..c5be5089 100644 --- a/adminer/drivers/mssql.inc.php +++ b/adminer/drivers/mssql.inc.php @@ -607,7 +607,7 @@ WHERE sys1.xtype = 'TR' AND sys2.name = " . q($table) } function support($feature) { - return preg_match('~^(database|table|columns|sql|indexes|scheme|trigger|view|drop_col)$~', $feature); //! routine| + return preg_match('~^(columns|database|drop_col|indexes|scheme|sql|table|trigger|view|view_trigger)$~', $feature); //! routine| } $jush = "mssql"; diff --git a/adminer/drivers/mysql.inc.php b/adminer/drivers/mysql.inc.php index 6a124d48..92062938 100644 --- a/adminer/drivers/mysql.inc.php +++ b/adminer/drivers/mysql.inc.php @@ -992,12 +992,12 @@ if (!defined("DRIVER")) { } /** Check whether a feature is supported - * @param string "comment", "copy", "database", "drop_col", "dump", "event", "kill", "partitioning", "privileges", "procedure", "processlist", "routine", "scheme", "sequence", "status", "table", "trigger", "type", "variables", "view" + * @param string "comment", "copy", "database", "drop_col", "dump", "event", "kill", "partitioning", "privileges", "procedure", "processlist", "routine", "scheme", "sequence", "status", "table", "trigger", "type", "variables", "view", "view_trigger" * @return bool */ function support($feature) { global $connection; - return !preg_match("~scheme|sequence|type" . ($connection->server_info < 5.1 ? "|event|partitioning" . ($connection->server_info < 5 ? "|view|routine|trigger" : "") : "") . "~", $feature); + return !preg_match("~scheme|sequence|type|view_trigger" . ($connection->server_info < 5.1 ? "|event|partitioning" . ($connection->server_info < 5 ? "|routine|trigger|view" : "") : "") . "~", $feature); } $jush = "sql"; ///< @var string JUSH identifier diff --git a/adminer/drivers/oracle.inc.php b/adminer/drivers/oracle.inc.php index 76c5c449..5af007dd 100644 --- a/adminer/drivers/oracle.inc.php +++ b/adminer/drivers/oracle.inc.php @@ -376,7 +376,7 @@ ORDER BY PROCESS } function support($feature) { - return preg_match('~^(database|table|columns|sql|indexes|view|scheme|processlist|drop_col|variables|status)$~', $feature); //! + return preg_match('~^(columns|database|drop_col|indexes|processlist|scheme|sql|status|table|variables|view|view_trigger)$~', $feature); //! } $jush = "oracle"; diff --git a/adminer/drivers/sqlite.inc.php b/adminer/drivers/sqlite.inc.php index 8cdf39dc..11639787 100644 --- a/adminer/drivers/sqlite.inc.php +++ b/adminer/drivers/sqlite.inc.php @@ -746,7 +746,7 @@ if (isset($_GET["sqlite"]) || isset($_GET["sqlite2"])) { } function support($feature) { - return preg_match('~^(database|table|columns|sql|indexes|view|trigger|variables|status|dump|move_col|drop_col)$~', $feature); + return preg_match('~^(columns|database|drop_col|dump|indexes|move_col|sql|status|table|trigger|variables|view|view_trigger)$~', $feature); } $jush = "sqlite"; diff --git a/adminer/table.inc.php b/adminer/table.inc.php index a84a3718..a8bab598 100644 --- a/adminer/table.inc.php +++ b/adminer/table.inc.php @@ -71,18 +71,18 @@ if ($fields) { echo '
' . lang('Add foreign key') . "\n"; } - if (support("trigger")) { - echo "
$val[0] | $val[1] | " . h($key) . " | " . lang('Alter') . "\n"; - } - echo " |
---|
$val[0] | $val[1] | " . h($key) . " | " . lang('Alter') . "\n";
}
- echo ' ' . lang('Add trigger') . "\n"; + echo " |
---|
' . lang('Add trigger') . "\n"; } } diff --git a/changes.txt b/changes.txt index 686b4c63..0a11cf43 100644 --- a/changes.txt +++ b/changes.txt @@ -19,6 +19,7 @@ Use MD5 for editing long keys only in supported drivers, bug since Adminer 3.6.4 Don't execute external JavaScript when verifying version Include JUSH in the compiled version Protect CSRF token against BREACH +Non-MySQL: View triggers SQLite: Allow editing primary key SQLite: Allow editing foreign keys PostgreSQL: Fix handling of nextval() default values