在 MySQL 中使用 DESC 查看一个表的所有的列

您所在的位置:网站首页 MySQL错误1046 在 MySQL 中使用 DESC 查看一个表的所有的列

在 MySQL 中使用 DESC 查看一个表的所有的列

2023-01-01 21:38| 来源: 网络整理| 查看: 265

有时候,您或许想查看一个表中的所有列的信息。MySQL 提供了两个命令帮你完成此操作:

使用 DESC 语句列出表中的列 使用 SHOW COLUMNS 语句列出表中的列

MySQL DESC 语句是 SHOW COLUMNS 的简化形式,本文主要说明 DESC 语句的用法。

MySQL DESC 用法

要显示一个表的所有的列,请按照如下方法使用 DESC 语句:

DESC [database_name.]table_name

这里,

database_name 是数据库的名字。当你已经选择了一个数据库作为默认数据库时, database_name. 是可以省略的。 table_name 是表的名字。

您也可以使用 DESCRIBE 代替 DESC。DESC 是 DESCRIBE 的缩写,他们完全一样。

如果您没有指定默认数据库,又省略了数据库名字,MySQL 将会返回一个错误: ERROR 1046 (3D000): No database selected。

返回的列

MySQL DESC 语句返回 6 个列:

Field 此列的名称 Type 此列的数据类型 Null YES 或者 NO 指示此列是否可以为 NULL Key 此列的索引定义 Default 此列的默认值 Extra 其他的额外信息。比如 auto_increment 等。 MySQL DESC 实例

以下实例显示如何使用 DESC 语句列出来自 Sakila 示例数据库中的表 actor 表中的列。

使用 mysql 客户端工具连接到 MySQL 服务器:

mysql -u root -p

输入 root 帐户的密码并按 Enter :

Enter password: ********

直接运行下面的命令尝试列出所有的表:

DESC actor;

此时,MySQL 会返回一个错误:ERROR 1046 (3D000): No database selected 。 因为您还未指定默认的数据库。

在 DESC 语句中指定数据库和表名:

DESC sakila.actor;

下面是输出:

+-------------+-------------------+------+-----+-------------------+-----------------------------------------------+ | Field | Type | Null | Key | Default | Extra | +-------------+-------------------+------+-----+-------------------+-----------------------------------------------+ | actor_id | smallint unsigned | NO | PRI | NULL | auto_increment | | first_name | varchar(45) | NO | | NULL | | | last_name | varchar(45) | NO | MUL | NULL | | | last_update | timestamp | NO | | CURRENT_TIMESTAMP | DEFAULT_GENERATED on update CURRENT_TIMESTAMP | +-------------+-------------------+------+-----+-------------------+-----------------------------------------------+

使用 USE 命令设置默认的数据库:

USE sakila;

直接运行下面的命令尝试列出所有的表:

DESC actor;

此时, 此命令的输出和上面的命令 DESC sakila.actor; 相同。这是因为此时的默认数据库是 sakila。

结论

在本文中,您学习了在 MySQL 中如何使用 DESC 语句列出一个表的所有的列。 DESC 语句是 SHOW COLUMNS 的快捷命令。如果您想对结果进行过滤或者显示更多的信息,请使用 SHOW COLUMNS 语句列出表的列。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3