mysql数据库在安装完成时,自动创建了information_schema、mysql、test这三个数据库。其中,information_schema记录了创建的所有数据库的相关信息,因此可以通过它查询想要的数据表字段名称。
information_schema数据库中有一个叫做COLUMNS的表,该表记录了所有数据库表的字段信息,包括数据库名称(TABLE_SCHEMA)、表名称(TABLE_NAME)、字段名称(COLUMN_NAME)、字段顺序位置(ORDINAL_POSITION)、字段类型(COLUMN_TYPE)等等。通过该表即可查询任意数据库任意表的结构信息。
查询指定数据表的全部字段名称,写法为:
select COLUMN_NAME
from information_schema.COLUMNS
where table_name = '(表名称)'
and table_schema = '(数据库名称)';
需注意的是,若查询条件仅指定了表名称,则查询结果包含了所有数据库中同名表的字段名称;若查询条件仅指定了数据库名称,则查询结果包含了该库中所有表的字段名称。