# 26.3.17 信息_SCHEMA KEYWORDS 表

关键词表列出了 MySQL 认为关键字的单词,并为每个关键字指明它是否是保留的。保留关键字在某些情况下可能需要特殊处理,例如用作标识符时的特殊引用(参见第 9.3 节,“关键字和保留字”)。该表为应用程序提供了 MySQL 关键字信息的运行时来源。

在 MySQL 8.0.13 之前,从关键词未选择默认数据库的表产生错误。(错误 #90160,错误 #27729859)

关键词表有这些列:

  • 单词

    关键字。

  • 预订的

    一个整数,指示关键字是保留 (1) 还是非保留 (0)。

    这些查询分别列出所有关键字、所有保留关键字和所有非保留关键字:

SELECT * FROM INFORMATION_SCHEMA.KEYWORDS;
SELECT WORD FROM INFORMATION_SCHEMA.KEYWORDS WHERE RESERVED = 1;
SELECT WORD FROM INFORMATION_SCHEMA.KEYWORDS WHERE RESERVED = 0;

后两个查询等价于:

SELECT WORD FROM INFORMATION_SCHEMA.KEYWORDS WHERE RESERVED;
SELECT WORD FROM INFORMATION_SCHEMA.KEYWORDS WHERE NOT RESERVED;

如果从源代码构建 MySQL,构建过程会生成一个关键字列表.h包含关键字数组及其保留状态的头文件。这个文件可以在sql构建目录下的目录。此文件对于需要关键字列表的静态源的应用程序可能很有用。