Toto je technicky chyba v phpMyAdmin. Z 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 (
(seznam obsahuje 'STATUS'
a 'TYPE'
, které zjevně nejsou na odkazované manuálové stránce).
Chyba č. 948
zjistil, že phpMyAdmin v té době používal velká písmena v určitých názvech sloupců (včetně STATUS
) kvůli (chybnému) označení jako vyhrazená slova z tohoto seznamu; tato klíčová slova byla původně odstraněna
v důsledku toho ze seznamu, ale toto potvrzení bylo následně odvoláno
, pro důvody, které vysvětlil Alexander Turek
:
Vaše oprava kazí pěknou tiskárnu! Toto je spíše problém analyzátoru.
FIRST a STATUS byly uvnitř tohoto pole vyhrazených slov, protože jsou součástí příkazů MySQL. STATUS se používá v "SHOW STATUS" a FIRST části sytaxe ALTER.
Navíc tato chyba ovlivňuje mnohem více slov než jen STATUS a FIRST. Nechci vědět, co se stane, když je všechny přesuneme z pole vyhrazených slov...
Kvůli vaší změně již nejsou oba dotazy dobře zvýrazněny.
To znamená, že phpMyAdmin používá stejný seznam slov ke zvýrazňování syntaxe na své pěkné tiskárně jako k detekci rezervovaných slov; to je chybné a vede to k varováním, která pozorujete.