From 818b9f76bf7d927e9ac6555f775e243dcf44092b Mon Sep 17 00:00:00 2001 From: William Desportes Date: Sat, 22 Feb 2020 16:26:00 +0100 Subject: [PATCH] Fix more broken queries on Windows CI Signed-off-by: William Desportes --- libraries/classes/DatabaseInterface.php | 44 ++++++++++----------- libraries/classes/Table.php | 18 ++++----- test/classes/TableTest.php | 52 ++++++++++++------------- 3 files changed, 55 insertions(+), 59 deletions(-) diff --git a/libraries/classes/DatabaseInterface.php b/libraries/classes/DatabaseInterface.php index debb7bce4a..c5f7a7679b 100644 --- a/libraries/classes/DatabaseInterface.php +++ b/libraries/classes/DatabaseInterface.php @@ -916,34 +916,30 @@ class DatabaseInterface $sql_where_schema = ''; } - $sql = 'SELECT *, - CAST(BIN_NAME AS CHAR CHARACTER SET utf8) AS SCHEMA_NAME - FROM ('; - $sql .= 'SELECT - BINARY s.SCHEMA_NAME AS BIN_NAME, - s.DEFAULT_COLLATION_NAME'; + $sql = 'SELECT *, ' + . 'CAST(BIN_NAME AS CHAR CHARACTER SET utf8) AS SCHEMA_NAME' + . ' FROM ('; + $sql .= 'SELECT' + . ' BINARY s.SCHEMA_NAME AS BIN_NAME,' + . ' s.DEFAULT_COLLATION_NAME'; if ($force_stats) { - $sql .= ', - COUNT(t.TABLE_SCHEMA) AS SCHEMA_TABLES, - SUM(t.TABLE_ROWS) AS SCHEMA_TABLE_ROWS, - SUM(t.DATA_LENGTH) AS SCHEMA_DATA_LENGTH, - SUM(t.MAX_DATA_LENGTH) AS SCHEMA_MAX_DATA_LENGTH, - SUM(t.INDEX_LENGTH) AS SCHEMA_INDEX_LENGTH, - SUM(t.DATA_LENGTH + t.INDEX_LENGTH) - AS SCHEMA_LENGTH, - SUM(IF(t.ENGINE <> \'InnoDB\', t.DATA_FREE, 0)) - AS SCHEMA_DATA_FREE'; + $sql .= ',' + . ' COUNT(t.TABLE_SCHEMA) AS SCHEMA_TABLES,' + . ' SUM(t.TABLE_ROWS) AS SCHEMA_TABLE_ROWS,' + . ' SUM(t.DATA_LENGTH) AS SCHEMA_DATA_LENGTH,' + . ' SUM(t.MAX_DATA_LENGTH) AS SCHEMA_MAX_DATA_LENGTH,' + . ' SUM(t.INDEX_LENGTH) AS SCHEMA_INDEX_LENGTH,' + . ' SUM(t.DATA_LENGTH + t.INDEX_LENGTH) AS SCHEMA_LENGTH,' + . ' SUM(IF(t.ENGINE <> \'InnoDB\', t.DATA_FREE, 0)) AS SCHEMA_DATA_FREE'; } - $sql .= ' - FROM `information_schema`.SCHEMATA s '; + $sql .= ' FROM `information_schema`.SCHEMATA s '; if ($force_stats) { - $sql .= ' - LEFT JOIN `information_schema`.TABLES t - ON BINARY t.TABLE_SCHEMA = BINARY s.SCHEMA_NAME'; + $sql .= ' LEFT JOIN `information_schema`.TABLES t' + . ' ON BINARY t.TABLE_SCHEMA = BINARY s.SCHEMA_NAME'; } - $sql .= $sql_where_schema . ' - GROUP BY BINARY s.SCHEMA_NAME, s.DEFAULT_COLLATION_NAME - ORDER BY '; + $sql .= $sql_where_schema + . ' GROUP BY BINARY s.SCHEMA_NAME, s.DEFAULT_COLLATION_NAME' + . ' ORDER BY '; if ($sort_by == 'SCHEMA_NAME' || $sort_by == 'DEFAULT_COLLATION_NAME' ) { diff --git a/libraries/classes/Table.php b/libraries/classes/Table.php index df1fd12dfa..7865812454 100644 --- a/libraries/classes/Table.php +++ b/libraries/classes/Table.php @@ -245,10 +245,10 @@ class Table // query information_schema $result = $this->_dbi->fetchResult( - "SELECT TABLE_NAME - FROM information_schema.VIEWS - WHERE TABLE_SCHEMA = '" . $this->_dbi->escapeString((string) $db) . "' - AND TABLE_NAME = '" . $this->_dbi->escapeString((string) $table) . "'" + 'SELECT TABLE_NAME' + . ' FROM information_schema.VIEWS' + . ' WHERE TABLE_SCHEMA = \'' . $this->_dbi->escapeString((string) $db) . '\'' + . ' AND TABLE_NAME = \'' . $this->_dbi->escapeString((string) $table) . '\'' ); return $result ? true : false; } @@ -265,11 +265,11 @@ class Table } $result = $this->_dbi->fetchResult( - "SELECT TABLE_NAME - FROM information_schema.VIEWS - WHERE TABLE_SCHEMA = '" . $this->_dbi->escapeString($this->_db_name) . "' - AND TABLE_NAME = '" . $this->_dbi->escapeString($this->_name) . "' - AND IS_UPDATABLE = 'YES'" + 'SELECT TABLE_NAME' + . ' FROM information_schema.VIEWS' + . ' WHERE TABLE_SCHEMA = \'' . $this->_dbi->escapeString($this->_db_name) . '\'' + . ' AND TABLE_NAME = \'' . $this->_dbi->escapeString($this->_name) . '\'' + . ' AND IS_UPDATABLE = \'YES\'' ); return $result ? true : false; } diff --git a/test/classes/TableTest.php b/test/classes/TableTest.php index 65d2b3f537..ceffa29d64 100644 --- a/test/classes/TableTest.php +++ b/test/classes/TableTest.php @@ -60,37 +60,37 @@ class TableTest extends PmaTestCase } }; - $sql_isView_true = "SELECT TABLE_NAME - FROM information_schema.VIEWS - WHERE TABLE_SCHEMA = 'PMA' - AND TABLE_NAME = 'PMA_BookMark'"; + $sql_isView_true = 'SELECT TABLE_NAME' + . ' FROM information_schema.VIEWS' + . ' WHERE TABLE_SCHEMA = \'PMA\'' + . ' AND TABLE_NAME = \'PMA_BookMark\''; - $sql_isView_false = "SELECT TABLE_NAME - FROM information_schema.VIEWS - WHERE TABLE_SCHEMA = 'PMA' - AND TABLE_NAME = 'PMA_BookMark_2'"; + $sql_isView_false = 'SELECT TABLE_NAME' + . ' FROM information_schema.VIEWS' + . ' WHERE TABLE_SCHEMA = \'PMA\'' + . ' AND TABLE_NAME = \'PMA_BookMark_2\''; - $sql_isUpdatableView_true = "SELECT TABLE_NAME - FROM information_schema.VIEWS - WHERE TABLE_SCHEMA = 'PMA' - AND TABLE_NAME = 'PMA_BookMark' - AND IS_UPDATABLE = 'YES'"; + $sql_isUpdatableView_true = 'SELECT TABLE_NAME' + . ' FROM information_schema.VIEWS' + . ' WHERE TABLE_SCHEMA = \'PMA\'' + . ' AND TABLE_NAME = \'PMA_BookMark\'' + . ' AND IS_UPDATABLE = \'YES\''; - $sql_isUpdatableView_false = "SELECT TABLE_NAME - FROM information_schema.VIEWS - WHERE TABLE_SCHEMA = 'PMA' - AND TABLE_NAME = 'PMA_BookMark_2' - AND IS_UPDATABLE = 'YES'"; + $sql_isUpdatableView_false = 'SELECT TABLE_NAME' + . ' FROM information_schema.VIEWS' + . ' WHERE TABLE_SCHEMA = \'PMA\'' + . ' AND TABLE_NAME = \'PMA_BookMark_2\'' + . ' AND IS_UPDATABLE = \'YES\''; - $sql_analyzeStructure_true = "SELECT COLUMN_NAME, DATA_TYPE - FROM information_schema.COLUMNS - WHERE TABLE_SCHEMA = 'PMA' - AND TABLE_NAME = 'PMA_BookMark'"; + $sql_analyzeStructure_true = 'SELECT COLUMN_NAME, DATA_TYPE' + . ' FROM information_schema.COLUMNS' + . ' WHERE TABLE_SCHEMA = \'PMA\'' + . ' AND TABLE_NAME = \'PMA_BookMark\''; - $sql_copy_data = "SELECT TABLE_NAME - FROM information_schema.VIEWS - WHERE TABLE_SCHEMA = 'db_data' - AND TABLE_NAME = 'table_data'"; + $sql_copy_data = 'SELECT TABLE_NAME' + . ' FROM information_schema.VIEWS' + . ' WHERE TABLE_SCHEMA = \'db_data\'' + . ' AND TABLE_NAME = \'table_data\''; $getUniqueColumns_sql = "select unique column";