Questo è, tecnicamente, un bug in phpMyAdmin. Da libraries/sqlparser.data.php
:
/**
* words forbidden to be used as column or table name wihtout quotes
* as seen in http://dev.mysql.com/doc/mysql/en/reserved-words.html
*
* @global array MySQL forbidden words
*/
$PMA_SQPdata_forbidden_word = array (
(l'elenco include 'STATUS'
e 'TYPE'
, che chiaramente non sono nella pagina di manuale di riferimento).
Bug #948
ha identificato che phpMyAdmin in quel momento scriveva in maiuscolo alcuni nomi di colonne (incluso STATUS
) per essere (erroneamente) identificati come parole riservate di questo elenco; queste parole chiave sono state inizialmente rimosse
dall'elenco di conseguenza, ma tale commit è stato successivamente invertito
, per i motivi spiegati da Alexander Turek
:
La tua correzione ha incasinato la bella stampante! Questo è piuttosto un problema dell'analizzatore.
FIRST e STATUS sono stati all'interno di questo array di parole riservate perché fanno parte dei comandi MySQL. STATUS è usato in "SHOW STATUS" e FIRST parte della sitassi ALTER.
Inoltre, questo bug interessa molte più parole di justSTATUS e FIRST. Non voglio sapere cosa succede se li rimuovessimo tutti dall'array di parole riservate...
A causa della tua modifica, entrambe le query non vengono più evidenziate bene.
Vale a dire, phpMyAdmin utilizza lo stesso elenco di parole per condurre l'evidenziazione della sintassi nella sua graziosa stampante come fa per rilevare le parole riservate; questo è errato e porta agli avvertimenti che osservi.