From 072cf9147f9a14ab0d64a59aa8a9f8f753e2bd0a Mon Sep 17 00:00:00 2001 From: Remi Peyronnet Date: Sat, 9 Mar 2019 20:27:33 +0100 Subject: [PATCH] Add compatibility support for ALTER TABLE containing AFTER command --- query_alter.class.php | 1 + utilities/test-sql.php | 9 +++++++++ 2 files changed, 10 insertions(+) create mode 100644 utilities/test-sql.php diff --git a/query_alter.class.php b/query_alter.class.php index 488ffd9..8b1c095 100644 --- a/query_alter.class.php +++ b/query_alter.class.php @@ -281,6 +281,7 @@ private function handle_single_command($queries) { $tokenized_query = $queries; if (stripos($tokenized_query['command'], 'add column') !== false) { $column_def = $this->convert_field_types($tokenized_query['column_name'], $tokenized_query['column_def']); + $column_def = preg_replace('/ AFTER.*/im', '', $column_def); $query = "ALTER TABLE {$tokenized_query['table_name']} ADD COLUMN {$tokenized_query['column_name']} $column_def"; } elseif (stripos($tokenized_query['command'], 'rename') !== false) { $query = "ALTER TABLE {$tokenized_query['table_name']} RENAME TO {$tokenized_query['column_name']}"; diff --git a/utilities/test-sql.php b/utilities/test-sql.php new file mode 100644 index 0000000..458f89d --- /dev/null +++ b/utilities/test-sql.php @@ -0,0 +1,9 @@ +rewrite_query("ALTER TABLE `wp_redirection_items` ADD `match_url` VARCHAR(2000) NULL DEFAULT NULL AFTER `url`","ALTER")); + +?>