如何检查MySQL表中是否存在列?

为了了解一列是否存在,我们有以下方法-

  • 借助DESC命令

  • 使用SHOW命令

首先,我们将创建一个包含列的表-

mysql> CREATE table ColumnExistDemo

-> (

-> UniqueId int,

-> UniqueName varchar(200),

-> UniqueAddress varchar(200)

-> );

在第一种方法中,我们将获得具有有意义信息的整个列名称。语法如下-

DESC yourTableName;

让我们应用上面的查询来检查列名是否存在。但是,这种方法不好,因为它显示所有列。

mysql> DESC ColumnExistDemo;

以下是输出

+---------------+--------------+------+-----+---------+-------+

| Field         | Type         | Null | Key | Default | Extra |

+---------------+--------------+------+-----+---------+-------+

| UniqueId      | int(11)      | YES  |     | NULL    |       |

| UniqueName    | varchar(200) | YES  |     | NULL    |       | 

| UniqueAddress | varchar(200) | YES  |     | NULL    |       |

+---------------+--------------+------+-----+---------+-------+

3 rows in set (0.01 sec)

第二种方法更好,因为我们可以检查单个列。语法如下-

SHOW COLUMNS from `yourTableName` LIKE 'yourColumnName';

现在,我正在应用上面的查询来检查是否存在colum。查询如下-

mysql> SHOW COLUMNS from `ColumnExistDemo` LIKE 'UniqueName';

以下是输出

+------------+--------------+------+-----+---------+-------+

| Field      | Type         | Null | Key | Default | Extra |

+------------+--------------+------+-----+---------+-------+

| UniqueName | varchar(200) | YES  |     | NULL    |       |

+------------+--------------+------+-----+---------+-------+

1 row in set (0.00 sec)

以上是 如何检查MySQL表中是否存在列? 的全部内容, 来源链接: utcz.com/z/326909.html

回到顶部