diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8fd6492e..168a8959 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,7 @@
## Adminer dev
- Allow specifying operator in search anywhere
- Do not order descending in GROUP BY select
+- Allow exporting SQL in SQL command (bug #1092)
- Add section links in database overview
- Warn about exceeded max_file_uploads in import
- MySQL 5.0-: Do not load partitioning info in alter table (bug #1099)
diff --git a/adminer/sql.inc.php b/adminer/sql.inc.php
index c2908c53..f774bf10 100644
--- a/adminer/sql.inc.php
+++ b/adminer/sql.inc.php
@@ -4,9 +4,13 @@ namespace Adminer;
if (!$error && $_POST["export"]) {
save_settings(array("output" => $_POST["output"], "format" => $_POST["format"]), "adminer_import");
dump_headers("sql");
- adminer()->dumpTable("", "");
- adminer()->dumpData("", "table", $_POST["query"]);
- adminer()->dumpFooter();
+ if ($_POST["format"] == "sql") {
+ echo "$_POST[query]\n";
+ } else {
+ adminer()->dumpTable("", "");
+ adminer()->dumpData("", "table", $_POST["query"]);
+ adminer()->dumpFooter();
+ }
exit;
}
@@ -68,8 +72,6 @@ if (!$error && $_POST) {
$parse = '[\'"' . (JUSH == "sql" ? '`#' : (JUSH == "sqlite" ? '`[' : (JUSH == "mssql" ? '[' : ''))) . ']|/\*|' . $line_comment . '|$' . (JUSH == "pgsql" ? '|\$[^$]*\$' : '');
$total_start = microtime(true);
$adminer_export = get_settings("adminer_import"); // this doesn't offer SQL export so we match the import/export style at select
- $dump_format = adminer()->dumpFormat();
- unset($dump_format["sql"]);
while ($query != "") {
if (!$offset && preg_match("~^$space*+DELIMITER\\s+(\\S+)~i", $query, $match)) {
@@ -174,7 +176,7 @@ if (!$error && $_POST) {
$id = "export-$commands";
echo ", " . lang('Export') . "" . script("qsl('a').onclick = partial(toggle, '$id');", "") . ": "
. html_select("output", adminer()->dumpOutput(), $adminer_export["output"]) . " "
- . html_select("format", $dump_format, $adminer_export["format"])
+ . html_select("format", adminer()->dumpFormat(), $adminer_export["format"])
. input_hidden("query", $q)
. "" . input_token() . "\n"
. "\n"