Merge branch 'QA_4_6'
Signed-off-by: Michal Čihař <michal@cihar.com>
This commit is contained in:
commit
27fb0b58af
@ -32,7 +32,7 @@
|
||||
"ext-xml": "*",
|
||||
"ext-pcre": "*",
|
||||
"ext-json": "*",
|
||||
"phpmyadmin/sql-parser": "^3.4",
|
||||
"phpmyadmin/sql-parser": "^4.0",
|
||||
"phpmyadmin/motranslator": "^3.0",
|
||||
"phpmyadmin/shapefile": "^2.0",
|
||||
"tecnickcom/tcpdf": "^6.2",
|
||||
|
||||
@ -15,7 +15,7 @@ require_once 'libraries/common.inc.php';
|
||||
|
||||
$query = !empty($_POST['sql']) ? $_POST['sql'] : '';
|
||||
|
||||
$query = SqlParser\Utils\Formatter::format($query);
|
||||
$query = PhpMyAdmin\SqlParser\Utils\Formatter::format($query);
|
||||
|
||||
$response = Response::getInstance();
|
||||
$response->addJSON("sql", $query);
|
||||
|
||||
@ -277,12 +277,12 @@ if ($export_type == 'server') {
|
||||
// Merge SQL Query aliases with Export aliases from
|
||||
// export page, Export page aliases are given more
|
||||
// preference over SQL Query aliases.
|
||||
$parser = new SqlParser\Parser($sql_query);
|
||||
$parser = new \PhpMyAdmin\SqlParser\Parser($sql_query);
|
||||
$aliases = array();
|
||||
if ((!empty($parser->statements[0]))
|
||||
&& ($parser->statements[0] instanceof SqlParser\Statements\SelectStatement)
|
||||
&& ($parser->statements[0] instanceof \PhpMyAdmin\SqlParser\Statements\SelectStatement)
|
||||
) {
|
||||
$aliases = SqlParser\Utils\Misc::getAliases($parser->statements[0], $db);
|
||||
$aliases = \PhpMyAdmin\SqlParser\Utils\Misc::getAliases($parser->statements[0], $db);
|
||||
}
|
||||
if (!empty($_REQUEST['aliases'])) {
|
||||
$aliases = PMA_mergeAliases($aliases, $_REQUEST['aliases']);
|
||||
|
||||
@ -7,7 +7,7 @@
|
||||
*/
|
||||
namespace PMA\libraries;
|
||||
|
||||
use SqlParser\Utils\Query;
|
||||
use PhpMyAdmin\SqlParser\Utils\Query;
|
||||
use PMA\libraries\plugins\transformations\Text_Plain_Link;
|
||||
use PMA\libraries\URL;
|
||||
use PMA\libraries\Sanitize;
|
||||
@ -4247,7 +4247,7 @@ class DisplayResults
|
||||
|
||||
/**
|
||||
* The statement this table is built for.
|
||||
* @var \SqlParser\Statements\SelectStatement
|
||||
* @var \PhpMyAdmin\SqlParser\Statements\SelectStatement
|
||||
*/
|
||||
$statement = $analyzed_sql_results['statement'];
|
||||
|
||||
|
||||
@ -7,10 +7,10 @@
|
||||
*/
|
||||
namespace PMA\libraries;
|
||||
|
||||
use SqlParser\Lexer;
|
||||
use SqlParser\Parser;
|
||||
use SqlParser\UtfString;
|
||||
use SqlParser\Utils\Error as ParserError;
|
||||
use PhpMyAdmin\SqlParser\Lexer;
|
||||
use PhpMyAdmin\SqlParser\Parser;
|
||||
use PhpMyAdmin\SqlParser\UtfString;
|
||||
use PhpMyAdmin\SqlParser\Utils\Error as ParserError;
|
||||
|
||||
/**
|
||||
* The linter itself.
|
||||
|
||||
@ -8,11 +8,11 @@
|
||||
namespace PMA\libraries;
|
||||
|
||||
use PMA\libraries\plugins\export\ExportSql;
|
||||
use SqlParser\Components\Expression;
|
||||
use SqlParser\Components\OptionsArray;
|
||||
use SqlParser\Context;
|
||||
use SqlParser\Parser;
|
||||
use SqlParser\Statements\DropStatement;
|
||||
use PhpMyAdmin\SqlParser\Components\Expression;
|
||||
use PhpMyAdmin\SqlParser\Components\OptionsArray;
|
||||
use PhpMyAdmin\SqlParser\Context;
|
||||
use PhpMyAdmin\SqlParser\Parser;
|
||||
use PhpMyAdmin\SqlParser\Statements\DropStatement;
|
||||
|
||||
/**
|
||||
* Handles everything related to tables
|
||||
@ -905,7 +905,7 @@ class Table
|
||||
|
||||
/**
|
||||
* The CREATE statement of this structure.
|
||||
* @var \SqlParser\Statements\CreateStatement $statement
|
||||
* @var \PhpMyAdmin\SqlParser\Statements\CreateStatement $statement
|
||||
*/
|
||||
$statement = $parser->statements[0];
|
||||
|
||||
@ -932,7 +932,7 @@ class Table
|
||||
|
||||
/**
|
||||
* The ALTER statement that generates the constraints.
|
||||
* @var \SqlParser\Statements\AlterStatement $statement
|
||||
* @var \PhpMyAdmin\SqlParser\Statements\AlterStatement $statement
|
||||
*/
|
||||
$statement = $parser->statements[0];
|
||||
|
||||
@ -971,7 +971,7 @@ class Table
|
||||
$GLOBALS['sql_indexes'] = '';
|
||||
/**
|
||||
* The ALTER statement that generates the indexes.
|
||||
* @var \SqlParser\Statements\AlterStatement $statement
|
||||
* @var \PhpMyAdmin\SqlParser\Statements\AlterStatement $statement
|
||||
*/
|
||||
foreach ($parser->statements as $statement) {
|
||||
|
||||
@ -1013,7 +1013,7 @@ class Table
|
||||
|
||||
/**
|
||||
* The ALTER statement that alters the AUTO_INCREMENT value.
|
||||
* @var \SqlParser\Statements\AlterStatement $statement
|
||||
* @var \PhpMyAdmin\SqlParser\Statements\AlterStatement $statement
|
||||
*/
|
||||
$statement = $parser->statements[0];
|
||||
|
||||
@ -2432,10 +2432,10 @@ class Table
|
||||
|
||||
$parser = new Parser($createTable);
|
||||
/**
|
||||
* @var \SqlParser\Statements\CreateStatement $stmt
|
||||
* @var \PhpMyAdmin\SqlParser\Statements\CreateStatement $stmt
|
||||
*/
|
||||
$stmt = $parser->statements[0];
|
||||
$fields = \SqlParser\Utils\Table::getFields($stmt);
|
||||
$fields = \PhpMyAdmin\SqlParser\Utils\Table::getFields($stmt);
|
||||
if ($column != null) {
|
||||
$expression = isset($fields[$column]['expr']) ?
|
||||
substr($fields[$column]['expr'], 1, -1) : '';
|
||||
|
||||
@ -617,7 +617,7 @@ class Tracker
|
||||
// $parsed_sql = PMA_SQP_parse($query);
|
||||
// $sql_info = PMA_SQP_analyze($parsed_sql);
|
||||
|
||||
$parser = new \SqlParser\Parser($query);
|
||||
$parser = new \PhpMyAdmin\SqlParser\Parser($query);
|
||||
|
||||
$tokens = $parser->list->tokens;
|
||||
|
||||
@ -638,7 +638,7 @@ class Tracker
|
||||
$result['type'] = 'DDL';
|
||||
|
||||
// Parse CREATE statement
|
||||
if ($statement instanceof \SqlParser\Statements\CreateStatement) {
|
||||
if ($statement instanceof \PhpMyAdmin\SqlParser\Statements\CreateStatement) {
|
||||
if (empty($options) || !isset($options[6])) {
|
||||
return $result;
|
||||
}
|
||||
@ -666,7 +666,7 @@ class Tracker
|
||||
}
|
||||
|
||||
// Parse ALTER statement
|
||||
elseif ($statement instanceof \SqlParser\Statements\AlterStatement) {
|
||||
elseif ($statement instanceof \PhpMyAdmin\SqlParser\Statements\AlterStatement) {
|
||||
if (empty($options) || !isset($options[3])) {
|
||||
return $result;
|
||||
}
|
||||
@ -683,7 +683,7 @@ class Tracker
|
||||
}
|
||||
|
||||
// Parse DROP statement
|
||||
elseif ($statement instanceof \SqlParser\Statements\DropStatement) {
|
||||
elseif ($statement instanceof \PhpMyAdmin\SqlParser\Statements\DropStatement) {
|
||||
if (empty($options) || !isset($options[1])) {
|
||||
return $result;
|
||||
}
|
||||
@ -703,7 +703,7 @@ class Tracker
|
||||
}
|
||||
|
||||
// Prase RENAME statement
|
||||
elseif ($statement instanceof \SqlParser\Statements\RenameStatement) {
|
||||
elseif ($statement instanceof \PhpMyAdmin\SqlParser\Statements\RenameStatement) {
|
||||
$result['identifier'] = 'RENAME TABLE';
|
||||
$result['tablename'] = $statement->renames[0]->old->table;
|
||||
$result['tablename_after_rename'] = $statement->renames[0]->new->table;
|
||||
@ -719,25 +719,25 @@ class Tracker
|
||||
$result['type'] = 'DML';
|
||||
|
||||
// Parse UPDATE statement
|
||||
if ($statement instanceof \SqlParser\Statements\UpdateStatement) {
|
||||
if ($statement instanceof \PhpMyAdmin\SqlParser\Statements\UpdateStatement) {
|
||||
$result['identifier'] = 'UPDATE';
|
||||
$result['tablename'] = $statement->tables[0]->table;
|
||||
}
|
||||
|
||||
// Parse INSERT INTO statement
|
||||
if ($statement instanceof \SqlParser\Statements\InsertStatement) {
|
||||
if ($statement instanceof \PhpMyAdmin\SqlParser\Statements\InsertStatement) {
|
||||
$result['identifier'] = 'INSERT';
|
||||
$result['tablename'] = $statement->into->dest->table;
|
||||
}
|
||||
|
||||
// Parse DELETE statement
|
||||
if ($statement instanceof \SqlParser\Statements\DeleteStatement) {
|
||||
if ($statement instanceof \PhpMyAdmin\SqlParser\Statements\DeleteStatement) {
|
||||
$result['identifier'] = 'DELETE';
|
||||
$result['tablename'] = $statement->from[0]->table;
|
||||
}
|
||||
|
||||
// Parse TRUNCATE statement
|
||||
if ($statement instanceof \SqlParser\Statements\TruncateStatement) {
|
||||
if ($statement instanceof \PhpMyAdmin\SqlParser\Statements\TruncateStatement) {
|
||||
$result['identifier'] = 'TRUNCATE' ;
|
||||
$result['tablename'] = $statement->table->table;
|
||||
}
|
||||
|
||||
@ -8,15 +8,15 @@
|
||||
namespace PMA\libraries;
|
||||
|
||||
use PMA\libraries\plugins\ImportPlugin;
|
||||
use SqlParser\Context;
|
||||
use SqlParser\Lexer;
|
||||
use SqlParser\Parser;
|
||||
use SqlParser\Token;
|
||||
use PhpMyAdmin\SqlParser\Context;
|
||||
use PhpMyAdmin\SqlParser\Lexer;
|
||||
use PhpMyAdmin\SqlParser\Parser;
|
||||
use PhpMyAdmin\SqlParser\Token;
|
||||
use stdClass;
|
||||
use SqlParser\Utils\Error as ParserError;
|
||||
use PMA\libraries\URL;
|
||||
use PMA\libraries\Sanitize;
|
||||
use PMA\libraries\Template;
|
||||
use PhpMyAdmin\SqlParser\Utils\Error as ParserError;
|
||||
|
||||
if (! defined('PHPMYADMIN')) {
|
||||
exit;
|
||||
|
||||
@ -800,11 +800,11 @@ if (! defined('PMA_MINIMUM_COMMON')) {
|
||||
$GLOBALS['PMA_Types'] = new TypesMySQL();
|
||||
|
||||
// Loads closest context to this version.
|
||||
SqlParser\Context::loadClosest('MySql' . PMA_MYSQL_INT_VERSION);
|
||||
PhpMyAdmin\SqlParser\Context::loadClosest('MySql' . PMA_MYSQL_INT_VERSION);
|
||||
|
||||
// Sets the default delimiter (if specified).
|
||||
if (!empty($_REQUEST['sql_delimiter'])) {
|
||||
SqlParser\Lexer::$DEFAULT_DELIMITER = $_REQUEST['sql_delimiter'];
|
||||
PhpMyAdmin\SqlParser\Lexer::$DEFAULT_DELIMITER = $_REQUEST['sql_delimiter'];
|
||||
}
|
||||
|
||||
// TODO: Set SQL modes too.
|
||||
|
||||
@ -15,8 +15,9 @@ use PMA\libraries\Message;
|
||||
use PMA\libraries\Template;
|
||||
use PMA\libraries\Util;
|
||||
use PMA\Util as Util_lib;
|
||||
use SqlParser;
|
||||
use SqlParser\Statements\CreateStatement;
|
||||
use PhpMyAdmin\SqlParser;
|
||||
use PhpMyAdmin\SqlParser\Statements\CreateStatement;
|
||||
use PhpMyAdmin\SqlParser\Utils\Table as SqlTable;
|
||||
use PMA\libraries\Table;
|
||||
use PMA\libraries\controllers\TableController;
|
||||
use PMA\libraries\URL;
|
||||
@ -145,11 +146,11 @@ class TableStructureController extends TableController
|
||||
$columns_names = $_REQUEST['field_name'];
|
||||
$reserved_keywords_names = array();
|
||||
foreach ($columns_names as $column) {
|
||||
if (SqlParser\Context::isKeyword(trim($column), true)) {
|
||||
if (\PhpMyAdmin\SqlParser\Context::isKeyword(trim($column), true)) {
|
||||
$reserved_keywords_names[] = trim($column);
|
||||
}
|
||||
}
|
||||
if (SqlParser\Context::isKeyword(trim($this->table), true)) {
|
||||
if (\PhpMyAdmin\SqlParser\Context::isKeyword(trim($this->table), true)) {
|
||||
$reserved_keywords_names[] = trim($this->table);
|
||||
}
|
||||
if (count($reserved_keywords_names) == 0) {
|
||||
@ -548,9 +549,9 @@ class TableStructureController extends TableController
|
||||
return null;
|
||||
}
|
||||
|
||||
$parser = new SqlParser\Parser($createTable);
|
||||
$parser = new \PhpMyAdmin\SqlParser\Parser($createTable);
|
||||
/**
|
||||
* @var $stmt SqlParser\Statements\CreateStatement
|
||||
* @var $stmt PhpMyAdmin\SqlParser\Statements\CreateStatement
|
||||
*/
|
||||
$stmt = $parser->statements[0];
|
||||
|
||||
|
||||
@ -1347,7 +1347,7 @@ function PMA_handleSimulateDMLRequest()
|
||||
}
|
||||
|
||||
// Parsing the query.
|
||||
$parser = new SqlParser\Parser($sql_query);
|
||||
$parser = new PhpMyAdmin\SqlParser\Parser($sql_query);
|
||||
|
||||
if (empty($parser->statements[0])) {
|
||||
continue;
|
||||
@ -1361,15 +1361,15 @@ function PMA_handleSimulateDMLRequest()
|
||||
'statement' => $statement,
|
||||
);
|
||||
|
||||
if ((!(($statement instanceof SqlParser\Statements\UpdateStatement)
|
||||
|| ($statement instanceof SqlParser\Statements\DeleteStatement)))
|
||||
if ((!(($statement instanceof PhpMyAdmin\SqlParser\Statements\UpdateStatement)
|
||||
|| ($statement instanceof PhpMyAdmin\SqlParser\Statements\DeleteStatement)))
|
||||
|| (!empty($statement->join))
|
||||
) {
|
||||
$error = $error_msg;
|
||||
break;
|
||||
}
|
||||
|
||||
$tables = SqlParser\Utils\Query::getTables($statement);
|
||||
$tables = PhpMyAdmin\SqlParser\Utils\Query::getTables($statement);
|
||||
if (count($tables) > 1) {
|
||||
$error = $error_msg;
|
||||
break;
|
||||
@ -1405,9 +1405,9 @@ function PMA_getMatchedRows($analyzed_sql_results = array())
|
||||
$statement = $analyzed_sql_results['statement'];
|
||||
|
||||
$matched_row_query = '';
|
||||
if ($statement instanceof SqlParser\Statements\DeleteStatement) {
|
||||
if ($statement instanceof PhpMyAdmin\SqlParser\Statements\DeleteStatement) {
|
||||
$matched_row_query = PMA_getSimulatedDeleteQuery($analyzed_sql_results);
|
||||
} elseif ($statement instanceof SqlParser\Statements\UpdateStatement) {
|
||||
} elseif ($statement instanceof PhpMyAdmin\SqlParser\Statements\UpdateStatement) {
|
||||
$matched_row_query = PMA_getSimulatedUpdateQuery($analyzed_sql_results);
|
||||
}
|
||||
|
||||
@ -1437,11 +1437,11 @@ function PMA_getMatchedRows($analyzed_sql_results = array())
|
||||
*/
|
||||
function PMA_getSimulatedUpdateQuery($analyzed_sql_results)
|
||||
{
|
||||
$table_references = SqlParser\Utils\Query::getTables(
|
||||
$table_references = PhpMyAdmin\SqlParser\Utils\Query::getTables(
|
||||
$analyzed_sql_results['statement']
|
||||
);
|
||||
|
||||
$where = SqlParser\Utils\Query::getClause(
|
||||
$where = PhpMyAdmin\SqlParser\Utils\Query::getClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'WHERE'
|
||||
@ -1464,7 +1464,7 @@ function PMA_getSimulatedUpdateQuery($analyzed_sql_results)
|
||||
$order_and_limit = '';
|
||||
|
||||
if (!empty($analyzed_sql_results['statement']->order)) {
|
||||
$order_and_limit .= ' ORDER BY ' . SqlParser\Utils\Query::getClause(
|
||||
$order_and_limit .= ' ORDER BY ' . PhpMyAdmin\SqlParser\Utils\Query::getClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'ORDER BY'
|
||||
@ -1472,7 +1472,7 @@ function PMA_getSimulatedUpdateQuery($analyzed_sql_results)
|
||||
}
|
||||
|
||||
if (!empty($analyzed_sql_results['statement']->limit)) {
|
||||
$order_and_limit .= ' LIMIT ' . SqlParser\Utils\Query::getClause(
|
||||
$order_and_limit .= ' LIMIT ' . PhpMyAdmin\SqlParser\Utils\Query::getClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'LIMIT'
|
||||
@ -1493,11 +1493,11 @@ function PMA_getSimulatedUpdateQuery($analyzed_sql_results)
|
||||
*/
|
||||
function PMA_getSimulatedDeleteQuery($analyzed_sql_results)
|
||||
{
|
||||
$table_references = SqlParser\Utils\Query::getTables(
|
||||
$table_references = PhpMyAdmin\SqlParser\Utils\Query::getTables(
|
||||
$analyzed_sql_results['statement']
|
||||
);
|
||||
|
||||
$where = SqlParser\Utils\Query::getClause(
|
||||
$where = PhpMyAdmin\SqlParser\Utils\Query::getClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'WHERE'
|
||||
@ -1510,7 +1510,7 @@ function PMA_getSimulatedDeleteQuery($analyzed_sql_results)
|
||||
$order_and_limit = '';
|
||||
|
||||
if (!empty($analyzed_sql_results['statement']->order)) {
|
||||
$order_and_limit .= ' ORDER BY ' . SqlParser\Utils\Query::getClause(
|
||||
$order_and_limit .= ' ORDER BY ' . PhpMyAdmin\SqlParser\Utils\Query::getClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'ORDER BY'
|
||||
@ -1518,7 +1518,7 @@ function PMA_getSimulatedDeleteQuery($analyzed_sql_results)
|
||||
}
|
||||
|
||||
if (!empty($analyzed_sql_results['statement']->limit)) {
|
||||
$order_and_limit .= ' LIMIT ' . SqlParser\Utils\Query::getClause(
|
||||
$order_and_limit .= ' LIMIT ' . PhpMyAdmin\SqlParser\Utils\Query::getClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'LIMIT'
|
||||
@ -1601,7 +1601,7 @@ function PMA_handleRollbackRequest($sql_query)
|
||||
*/
|
||||
function PMA_checkIfRollbackPossible($sql_query)
|
||||
{
|
||||
$parser = new SqlParser\Parser($sql_query);
|
||||
$parser = new PhpMyAdmin\SqlParser\Parser($sql_query);
|
||||
|
||||
if (empty($parser->statements[0])) {
|
||||
return false;
|
||||
@ -1610,16 +1610,16 @@ function PMA_checkIfRollbackPossible($sql_query)
|
||||
$statement = $parser->statements[0];
|
||||
|
||||
// Check if query is supported.
|
||||
if (!(($statement instanceof SqlParser\Statements\InsertStatement)
|
||||
|| ($statement instanceof SqlParser\Statements\UpdateStatement)
|
||||
|| ($statement instanceof SqlParser\Statements\DeleteStatement)
|
||||
|| ($statement instanceof SqlParser\Statements\ReplaceStatement))
|
||||
if (!(($statement instanceof PhpMyAdmin\SqlParser\Statements\InsertStatement)
|
||||
|| ($statement instanceof PhpMyAdmin\SqlParser\Statements\UpdateStatement)
|
||||
|| ($statement instanceof PhpMyAdmin\SqlParser\Statements\DeleteStatement)
|
||||
|| ($statement instanceof PhpMyAdmin\SqlParser\Statements\ReplaceStatement))
|
||||
) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Get table_references from the query.
|
||||
$tables = SqlParser\Utils\Query::getTables($statement);
|
||||
$tables = PhpMyAdmin\SqlParser\Utils\Query::getTables($statement);
|
||||
|
||||
// Check if each table is 'InnoDB'.
|
||||
foreach ($tables as $table) {
|
||||
|
||||
@ -27,7 +27,7 @@ function PMA_parseAnalyze($sql_query, $db)
|
||||
$GLOBALS['unparsed_sql'] = $sql_query;
|
||||
|
||||
// Get details about the SQL query.
|
||||
$analyzed_sql_results = SqlParser\Utils\Query::getAll($sql_query);
|
||||
$analyzed_sql_results = PhpMyAdmin\SqlParser\Utils\Query::getAll($sql_query);
|
||||
|
||||
extract($analyzed_sql_results);
|
||||
$table = '';
|
||||
|
||||
@ -21,11 +21,11 @@ use PMA\libraries\plugins\ExportPlugin;
|
||||
use PMA\libraries\Util;
|
||||
use PMA\libraries\properties\options\items\RadioPropertyItem;
|
||||
use PMA\libraries\properties\options\items\SelectPropertyItem;
|
||||
use SqlParser\Components\CreateDefinition;
|
||||
use SqlParser\Context;
|
||||
use SqlParser\Parser;
|
||||
use SqlParser\Statements\SelectStatement;
|
||||
use SqlParser\Token;
|
||||
use PhpMyAdmin\SqlParser\Components\CreateDefinition;
|
||||
use PhpMyAdmin\SqlParser\Context;
|
||||
use PhpMyAdmin\SqlParser\Parser;
|
||||
use PhpMyAdmin\SqlParser\Statements\SelectStatement;
|
||||
use PhpMyAdmin\SqlParser\Token;
|
||||
use PMA\libraries\properties\options\items\TextPropertyItem;
|
||||
|
||||
/**
|
||||
@ -2664,7 +2664,7 @@ class ExportSql extends ExportPlugin
|
||||
/**
|
||||
* The statement that represents the query.
|
||||
*
|
||||
* @var \SqlParser\Statements\CreateStatement $statement
|
||||
* @var \PhpMyAdmin\SqlParser\Statements\CreateStatement $statement
|
||||
*/
|
||||
$statement = $parser->statements[0];
|
||||
|
||||
|
||||
@ -15,7 +15,6 @@ use PMA\libraries\properties\options\groups\OptionsPropertyRootGroup;
|
||||
use PMA;
|
||||
use PMA\libraries\plugins\ImportPlugin;
|
||||
use PMA\libraries\properties\options\items\SelectPropertyItem;
|
||||
use SqlParser;
|
||||
|
||||
/**
|
||||
* Handles the import for the SQL format
|
||||
@ -111,7 +110,7 @@ class ImportSql extends ImportPlugin
|
||||
// Handle compatibility options.
|
||||
$this->_setSQLMode($GLOBALS['dbi'], $_REQUEST);
|
||||
|
||||
$bq = new SqlParser\Utils\BufferedQuery();
|
||||
$bq = new \PhpMyAdmin\SqlParser\Utils\BufferedQuery();
|
||||
if (isset($_POST['sql_delimiter'])) {
|
||||
$bq->setDelimiter($_POST['sql_delimiter']);
|
||||
}
|
||||
|
||||
@ -8,7 +8,6 @@
|
||||
use PMA\libraries\Message;
|
||||
use PMA\libraries\Table;
|
||||
use PMA\libraries\RecentFavoriteTable;
|
||||
use SqlParser\Statements\CreateStatement;
|
||||
use PMA\libraries\URL;
|
||||
|
||||
/**
|
||||
@ -773,12 +772,12 @@ function PMA_getForeigners($db, $table, $column = '', $source = 'both')
|
||||
$tableObj = new Table($table, $db);
|
||||
$show_create_table = $tableObj->showCreate();
|
||||
if ($show_create_table) {
|
||||
$parser = new SqlParser\Parser($show_create_table);
|
||||
$parser = new \PhpMyAdmin\SqlParser\Parser($show_create_table);
|
||||
/**
|
||||
* @var CreateStatement $stmt
|
||||
* @var \PhpMyAdmin\SqlParser\Statements\CreateStatement $stmt
|
||||
*/
|
||||
$stmt = $parser->statements[0];
|
||||
$foreign['foreign_keys_data'] = SqlParser\Utils\Table::getForeignKeys(
|
||||
$foreign['foreign_keys_data'] = \PhpMyAdmin\SqlParser\Utils\Table::getForeignKeys(
|
||||
$stmt
|
||||
);
|
||||
}
|
||||
|
||||
@ -5,11 +5,10 @@
|
||||
*
|
||||
* @package PhpMyAdmin
|
||||
*/
|
||||
use SqlParser\Statements\CreateStatement;
|
||||
use PMA\libraries\Response;
|
||||
use PMA\libraries\URL;
|
||||
use PMA\libraries\Template;
|
||||
|
||||
use PhpMyAdmin\SqlParser\Statements\CreateStatement;
|
||||
|
||||
if (! defined('PHPMYADMIN')) {
|
||||
exit;
|
||||
@ -254,14 +253,14 @@ function PMA_RTN_getRowForList($routine, $rowclass = '')
|
||||
$db, $routine['type'], $routine['name']
|
||||
);
|
||||
if ($definition !== false) {
|
||||
$parser = new SqlParser\Parser($definition);
|
||||
$parser = new PhpMyAdmin\SqlParser\Parser($definition);
|
||||
|
||||
/**
|
||||
* @var CreateStatement $stmt
|
||||
*/
|
||||
$stmt = $parser->statements[0];
|
||||
|
||||
$params = SqlParser\Utils\Routine::getParameters($stmt);
|
||||
$params = PhpMyAdmin\SqlParser\Utils\Routine::getParameters($stmt);
|
||||
|
||||
if (PMA\libraries\Util::currentUserHasPrivilege('EXECUTE', $db)) {
|
||||
$execute_action = 'execute_routine';
|
||||
|
||||
@ -9,8 +9,8 @@ use PMA\libraries\Charsets;
|
||||
use PMA\libraries\Message;
|
||||
use PMA\libraries\Response;
|
||||
use PMA\libraries\Util;
|
||||
use SqlParser\Statements\CreateStatement;
|
||||
use PMA\libraries\URL;
|
||||
use PhpMyAdmin\SqlParser\Statements\CreateStatement;
|
||||
|
||||
if (! defined('PHPMYADMIN')) {
|
||||
exit;
|
||||
@ -608,14 +608,14 @@ function PMA_RTN_getDataFromName($name, $type, $all = true)
|
||||
return false;
|
||||
}
|
||||
|
||||
$parser = new SqlParser\Parser($definition);
|
||||
$parser = new PhpMyAdmin\SqlParser\Parser($definition);
|
||||
|
||||
/**
|
||||
* @var CreateStatement $stmt
|
||||
*/
|
||||
$stmt = $parser->statements[0];
|
||||
|
||||
$params = SqlParser\Utils\Routine::getParameters($stmt);
|
||||
$params = PhpMyAdmin\SqlParser\Utils\Routine::getParameters($stmt);
|
||||
$retval['item_num_params'] = $params['num'];
|
||||
$retval['item_param_dir'] = $params['dir'];
|
||||
$retval['item_param_name'] = $params['name'];
|
||||
|
||||
@ -63,19 +63,19 @@ function PMA_handleSortOrder(
|
||||
);
|
||||
|
||||
// Create the new query.
|
||||
$full_sql_query = SqlParser\Utils\Query::replaceClause(
|
||||
$full_sql_query = PhpMyAdmin\SqlParser\Utils\Query::replaceClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'ORDER BY ' . $sortCol
|
||||
);
|
||||
|
||||
// TODO: Avoid reparsing the query.
|
||||
$analyzed_sql_results = SqlParser\Utils\Query::getAll($full_sql_query);
|
||||
$analyzed_sql_results = PhpMyAdmin\SqlParser\Utils\Query::getAll($full_sql_query);
|
||||
} else {
|
||||
// Store the remembered table into session.
|
||||
$pmatable->setUiProp(
|
||||
Table::PROP_SORTED_COLUMN,
|
||||
SqlParser\Utils\Query::getClause(
|
||||
PhpMyAdmin\SqlParser\Utils\Query::getClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'ORDER BY'
|
||||
@ -93,7 +93,7 @@ function PMA_handleSortOrder(
|
||||
*/
|
||||
function PMA_getSqlWithLimitClause(&$analyzed_sql_results)
|
||||
{
|
||||
return SqlParser\Utils\Query::replaceClause(
|
||||
return PhpMyAdmin\SqlParser\Utils\Query::replaceClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'LIMIT ' . $_SESSION['tmpval']['pos'] . ', '
|
||||
@ -1156,7 +1156,7 @@ function PMA_countQueryResults(
|
||||
// For UNION statements, only a SQL_CALC_FOUND_ROWS is required
|
||||
// after the first SELECT.
|
||||
|
||||
$count_query = SqlParser\Utils\Query::replaceClause(
|
||||
$count_query = PhpMyAdmin\SqlParser\Utils\Query::replaceClause(
|
||||
$analyzed_sql_results['statement'],
|
||||
$analyzed_sql_results['parser']->list,
|
||||
'SELECT SQL_CALC_FOUND_ROWS',
|
||||
@ -1299,7 +1299,7 @@ function PMA_deleteTransformationInfo($db, $table, $analyzed_sql_results)
|
||||
{
|
||||
include_once 'libraries/transformations.lib.php';
|
||||
$statement = $analyzed_sql_results['statement'];
|
||||
if ($statement instanceof SqlParser\Statements\AlterStatement) {
|
||||
if ($statement instanceof PhpMyAdmin\SqlParser\Statements\AlterStatement) {
|
||||
if (!empty($statement->altered[0])
|
||||
&& $statement->altered[0]->options->has('DROP')
|
||||
) {
|
||||
@ -1311,7 +1311,7 @@ function PMA_deleteTransformationInfo($db, $table, $analyzed_sql_results)
|
||||
);
|
||||
}
|
||||
}
|
||||
} elseif ($statement instanceof SqlParser\Statements\DropStatement) {
|
||||
} elseif ($statement instanceof PhpMyAdmin\SqlParser\Statements\DropStatement) {
|
||||
PMA_clearTransformations($db, $table);
|
||||
}
|
||||
}
|
||||
@ -1867,7 +1867,7 @@ function PMA_getQueryResponseForResultsReturned($result, $analyzed_sql_results,
|
||||
$updatableView = false;
|
||||
|
||||
$statement = $analyzed_sql_results['statement'];
|
||||
if ($statement instanceof SqlParser\Statements\SelectStatement) {
|
||||
if ($statement instanceof PhpMyAdmin\SqlParser\Statements\SelectStatement) {
|
||||
if (!empty($statement->expr)) {
|
||||
if ($statement->expr[0]->expr === '*') {
|
||||
$_table = new Table($table, $db);
|
||||
|
||||
@ -47,10 +47,10 @@ $export_page_title = __('View dump (schema) of table');
|
||||
// generate WHERE clause (if we are asked to export specific rows)
|
||||
|
||||
if (! empty($sql_query)) {
|
||||
$parser = new SqlParser\Parser($sql_query);
|
||||
$parser = new PhpMyAdmin\SqlParser\Parser($sql_query);
|
||||
|
||||
if ((!empty($parser->statements[0]))
|
||||
&& ($parser->statements[0] instanceof SqlParser\Statements\SelectStatement)
|
||||
&& ($parser->statements[0] instanceof PhpMyAdmin\SqlParser\Statements\SelectStatement)
|
||||
) {
|
||||
|
||||
// Finding aliases and removing them, but we keep track of them to be
|
||||
@ -72,7 +72,7 @@ if (! empty($sql_query)) {
|
||||
) {
|
||||
$replaces = array(
|
||||
array(
|
||||
'FROM', 'FROM ' . SqlParser\Components\ExpressionArray::build(
|
||||
'FROM', 'FROM ' . PhpMyAdmin\SqlParser\Components\ExpressionArray::build(
|
||||
$parser->statements[0]->from
|
||||
),
|
||||
),
|
||||
@ -90,33 +90,33 @@ if (! empty($sql_query)) {
|
||||
$replaces[] = array('LIMIT', '');
|
||||
|
||||
// Replacing the clauses.
|
||||
$sql_query = SqlParser\Utils\Query::replaceClauses(
|
||||
$sql_query = PhpMyAdmin\SqlParser\Utils\Query::replaceClauses(
|
||||
$parser->statements[0],
|
||||
$parser->list,
|
||||
$replaces
|
||||
);
|
||||
|
||||
// Removing the aliases by finding the alias followed by a dot.
|
||||
$tokens = SqlParser\Lexer::getTokens($sql_query);
|
||||
$tokens = PhpMyAdmin\SqlParser\Lexer::getTokens($sql_query);
|
||||
foreach ($aliases as $alias => $table) {
|
||||
$tokens = SqlParser\Utils\Tokens::replaceTokens(
|
||||
$tokens = PhpMyAdmin\SqlParser\Utils\Tokens::replaceTokens(
|
||||
$tokens,
|
||||
array(
|
||||
array(
|
||||
'value_str' => $alias,
|
||||
),
|
||||
array(
|
||||
'type' => SqlParser\Token::TYPE_OPERATOR,
|
||||
'type' => PhpMyAdmin\SqlParser\Token::TYPE_OPERATOR,
|
||||
'value_str' => '.',
|
||||
)
|
||||
),
|
||||
array(
|
||||
new SqlParser\Token($table),
|
||||
new SqlParser\Token('.', SqlParser\Token::TYPE_OPERATOR)
|
||||
new PhpMyAdmin\SqlParser\Token($table),
|
||||
new PhpMyAdmin\SqlParser\Token('.',PhpMyAdmin\SqlParser\Token::TYPE_OPERATOR)
|
||||
)
|
||||
);
|
||||
}
|
||||
$sql_query = SqlParser\TokensList::build($tokens);
|
||||
$sql_query = PhpMyAdmin\SqlParser\TokensList::build($tokens);
|
||||
}
|
||||
|
||||
echo PMA\libraries\Util::getMessage(PMA\libraries\Message::success());
|
||||
|
||||
@ -87,7 +87,7 @@ class DisplayResultsTest extends PMATestCase
|
||||
*/
|
||||
public function testisSelect()
|
||||
{
|
||||
$parser = new \SqlParser\Parser('SELECT * FROM pma');
|
||||
$parser = new \PhpMyAdmin\SqlParser\Parser('SELECT * FROM pma');
|
||||
$this->assertTrue(
|
||||
$this->_callPrivateFunction(
|
||||
'_isSelect',
|
||||
@ -1211,7 +1211,7 @@ class DisplayResultsTest extends PMATestCase
|
||||
*/
|
||||
public function dataProviderForTestSetHighlightedColumnGlobalField()
|
||||
{
|
||||
$parser = new SqlParser\Parser(
|
||||
$parser = new PhpMyAdmin\SqlParser\Parser(
|
||||
'SELECT * FROM db_name WHERE `db_name`.`tbl`.id > 0 AND `id` < 10'
|
||||
);
|
||||
return array(
|
||||
|
||||
@ -385,7 +385,7 @@ class PMA_Import_Test extends PHPUnit_Framework_TestCase
|
||||
*/
|
||||
function simulatedQueryTest($sql_query, $simulated_query)
|
||||
{
|
||||
$parser = new SqlParser\Parser($sql_query);
|
||||
$parser = new PhpMyAdmin\SqlParser\Parser($sql_query);
|
||||
$analyzed_sql_results = array(
|
||||
'query' => $sql_query,
|
||||
'parser' => $parser,
|
||||
|
||||
@ -169,8 +169,8 @@ class PMA_QuotingSlashing_Test extends PHPUnit_Framework_TestCase
|
||||
*/
|
||||
public function testBackquoteForbidenWords()
|
||||
{
|
||||
foreach (SqlParser\Context::$KEYWORDS as $keyword => $type) {
|
||||
if ($type & SqlParser\Token::FLAG_KEYWORD_RESERVED) {
|
||||
foreach (PhpMyAdmin\SqlParser\Context::$KEYWORDS as $keyword => $type) {
|
||||
if ($type & PhpMyAdmin\SqlParser\Token::FLAG_KEYWORD_RESERVED) {
|
||||
$this->assertEquals(
|
||||
"`" . $keyword . "`",
|
||||
PMA\libraries\Util::backquote($keyword, false)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user