首批通过分布式安全可靠测评,为关键业务系统打造
information_schema.COLUMNS
更新时间:2026-07-15 20:42:47
说明
该视图从 V1.4 版本开始引入。
功能描述
记录列信息。
字段说明
| 字段名称 | 类型 | 是否可以为 NULL | 描述 |
|---|---|---|---|
| TABLE_CATALOG | varchar(4096) | NO | 固定值(def) |
| TABLE_SCHEMA | varchar(128) | NO | Column 对应的表所属的库 |
| TABLE_NAME | varchar(256) | NO | Column 对应的表名 |
| COLUMN_NAME | varchar(128) | NO | 列名 |
| ORDINAL_POSITION | bigint(20) unsigned | NO | 列编号 |
| COLUMN_DEFAULT | varchar(262144) | YES | 列默认值 |
| IS_NULLABLE | varchar(4) | NO | 列值是否可以为 NULL |
| DATA_TYPE | varchar(64) | NO | 列中数据类型 |
| CHARACTER_MAXIMUM_LENGTH | bigint(20) unsigned | YES | 列的最大字符数 |
| CHARACTER_OCTET_LENGTH | bigint(20) unsigned | YES | 列的最大字节数 |
| NUMERIC_PRECISION | bigint(20) unsigned | YES | 数字精度 |
| NUMERIC_SCALE | bigint(20) unsigned | YES | 小数位数 |
| DATETIME_PRECISION | bigint(20) unsigned | YES | datetime 类型精度 |
| CHARACTER_SET_NAME | varchar(128) | YES | 列对应字符集名称 |
| COLLATION_NAME | varchar(128) | YES | 字符集比对方法 |
| COLUMN_TYPE | varchar(64) | NO | 字段类型 |
| COLUMN_KEY | varchar(3) | NO | 索引或者主键列 |
| EXTRA | varchar(4096) | NO | 其它信息 |
| PRIVILEGES | varchar(200) | NO | 权限信息 |
| COLUMN_COMMENT | varchar(2048) | NO | 注释 |
| GENERATION_EXPRESSION | varchar(262144) | NO | 对于生成的列,显示用于计算列值的表达式。 对于非生成列为空。 |
查询示例
查看表 tbl1 中各列的信息。
obclient [infotest]> SELECT * FROM information_schema.COLUMNS WHERE TABLE_NAME='tbl1';
查询结果如下:
+---------------+--------------+------------+-------------+------------------+----------------+-------------+-----------+--------------------------+------------------------+-------------------+---------------+--------------------+--------------------+----------------+-------------+------------+-------+--------------------------------+----------------+-----------------------+--------+
| TABLE_CATALOG | TABLE_SCHEMA | TABLE_NAME | COLUMN_NAME | ORDINAL_POSITION | COLUMN_DEFAULT | IS_NULLABLE | DATA_TYPE | CHARACTER_MAXIMUM_LENGTH | CHARACTER_OCTET_LENGTH | NUMERIC_PRECISION | NUMERIC_SCALE | DATETIME_PRECISION | CHARACTER_SET_NAME | COLLATION_NAME | COLUMN_TYPE | COLUMN_KEY | EXTRA | PRIVILEGES | COLUMN_COMMENT | GENERATION_EXPRESSION | SRS_ID |
+---------------+--------------+------------+-------------+------------------+----------------+-------------+-----------+--------------------------+------------------------+-------------------+---------------+--------------------+--------------------+----------------+-------------+------------+-------+--------------------------------+----------------+-----------------------+--------+
| def | infotest | tbl1 | col1 | 1 | NULL | NO | int | NULL | NULL | 11 | 0 | NULL | NULL | NULL | int(11) | | | select,insert,update,reference | | | NULL |
| def | infotest | tbl1 | col2 | 2 | NULL | YES | int | NULL | NULL | 11 | 0 | NULL | NULL | NULL | int(11) | | | select,insert,update,reference | | | NULL |
+---------------+--------------+------------+-------------+------------------+----------------+-------------+-----------+--------------------------+------------------------+-------------------+---------------+--------------------+--------------------+----------------+-------------+------------+-------+--------------------------------+----------------+-----------------------+--------+
2 rows in set