Description:
In MySQL 9.4.0, 2 new reserved keywords were added and one of them is set to 0 in information_schema.keywords
EXTERNAL
LIBRARY
Reserved is set to 0 for EXTERNAL instead of 1.
How to repeat:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 9.4.0 MySQL Community Server - GPL
Copyright (c) 2000, 2025, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> SELECT * FROM information_schema.keywords where word IN ( 'EXTERNAL', 'LIBRARY');
+----------+----------+
| WORD | RESERVED |
+----------+----------+
| EXTERNAL | 0 |
| LIBRARY | 1 |
+----------+----------+
2 rows in set (0.002 sec)
Test
-------------------
mysql> create table external (emp int);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'external (emp int)' at line 1
Suggested fix:
Fix
-------------------
Set reserved = 1 in the Information_schema.keywords