[Maria-developers] get is now a reserved word in mariadb 10 ?
Hi, I have a query with a column named "get". i.e. SELECT get FROM my_table... It works perfectly in 5.5, but in 10.0.6 it fails : ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'get FROM my_table' at line 1 I assume "get" is a new reserved word, probably inherited from MySQL 5.6 memcached support, although memcached is not supported in MariaDB ? (it's mentionned here : http://dev.mysql.com/doc/mysqld-version-reference/en/mysqld-version-referenc... ) Is there a specific KB entry for MariaDB 10.0.6 reserved words ? (I only see an entry for 5.5 here : https://mariadb.com/kb/en/reserved-words/ ) Thanks and regards, Jocelyn Fournier
Hi Jocelyn
Is there a specific KB entry for MariaDB 10.0.6 reserved words ? (I only see an entry for 5.5 here : https://mariadb.com/kb/en/reserved-words/ )
There isn't yet an entry for 10.0 reserved words in the Knowledge Base, but I will look at adding the details to the page you mentioned shortly. thanks, ian
Hi, Jocelyn! On Nov 21, Jocelyn Fournier wrote:
Hi,
I have a query with a column named "get". i.e. SELECT get FROM my_table...
It works perfectly in 5.5, but in 10.0.6 it fails :
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'get FROM my_table' at line 1
I assume "get" is a new reserved word, probably inherited from MySQL 5.6 memcached support, although memcached is not supported in MariaDB ?
GET comes from GET DIAGNOSTICS statement. And verb keywords are usually reserved. But not all (FLUSH is not). And I've just tried to unreserve GET, it didn't break anything. I'll test a bit more and if it'll work, I'll push that. Regards, Sergei
Hi Sergei, On 11/21/2013 03:51 PM, Sergei Golubchik wrote:
Hi, Jocelyn!
On Nov 21, Jocelyn Fournier wrote:
Hi,
I have a query with a column named "get". i.e. SELECT get FROM my_table...
It works perfectly in 5.5, but in 10.0.6 it fails :
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'get FROM my_table' at line 1
I assume "get" is a new reserved word, probably inherited from MySQL 5.6 memcached support, although memcached is not supported in MariaDB ?
GET comes from GET DIAGNOSTICS statement. And verb keywords are usually reserved.
But not all (FLUSH is not). And I've just tried to unreserve GET, it didn't break anything. I'll test a bit more and if it'll work, I'll push that.
GET is a reserved keyword in the SQL standard: http://savage.net.au/SQL/sql-2003-2.bnf.html#reserved%20word Perhaps we should non un-reserve it. Note, MySQL-5.6 also treats GET as a reserved word. Why have this incompatibility. I suggest this just should be documented.
Regards, Sergei
_______________________________________________ Mailing list: https://launchpad.net/~maria-developers Post to : maria-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-developers More help : https://help.launchpad.net/ListHelp
Hi, Alexander! On Nov 21, Alexander Barkov wrote:
GET comes from GET DIAGNOSTICS statement. And verb keywords are usually reserved.
But not all (FLUSH is not). And I've just tried to unreserve GET, it didn't break anything. I'll test a bit more and if it'll work, I'll push that.
GET is a reserved keyword in the SQL standard:
http://savage.net.au/SQL/sql-2003-2.bnf.html#reserved%20word
Yes, I know. It's also marked in sql_yacc.yy as "reserved in the sql standard".
Perhaps we should non un-reserve it.
Why not, we've always had a rule of not reserving more than required by the parser. In this case the parser requires that GET cannot be used as label in stored routines. But it can be used by identifiers.
Note, MySQL-5.6 also treats GET as a reserved word. Why have this incompatibility.
Unreserving keywords doesn't make MariaDB less of "drop in replacement", everything that worked will continue to work the way it did. Regards, Sergei
participants (4)
-
Alexander Barkov
-
Ian Gilfillan
-
Jocelyn Fournier
-
Sergei Golubchik