在mysql中查找特定约束

在mysql中查找特定约束,mysql,sql,Mysql,Sql,我的一个朋友在mySQl中创建了一个表,我如何检查他是否对列名应用了特定的约束 在我的例子中,我想验证他是否对列CHG_HOUR应用了CHECK约束?查询DESC作业对“检查”约束没有帮助 mysql> desc JOB; +--------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------

我的一个朋友在mySQl中创建了一个表,我如何检查他是否对列名应用了特定的约束

在我的例子中,我想验证他是否对列
CHG_HOUR
应用了
CHECK
约束?查询
DESC作业
对“检查”约束没有帮助

mysql> desc JOB;
+--------------+---------------+------+-----+---------+-------+
| Field        | Type          | Null | Key | Default | Extra |
+--------------+---------------+------+-----+---------+-------+
| JOB_CODE     | char(3)       | NO   | PRI | NULL    |       |
| JOB_CLASS    | char(30)      | YES  |     | NA      |       |
| CHG_HOUR     | decimal(12,2) | YES  |     | NULL    |       |
| OVERTIME_CHG | int(11)       | NO   |     | NULL    |       |
+--------------+---------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

简单回答:他没有


MySQL不支持检查约束,直到编写本文时,它还没有被发布。

您使用的是MySQL 8.0.16吗?不,它显示了当我在终端中输入
MySQL--version
时,在Ubuntu18.04上为Linux(x86_64)使用EditLine wrapper的
MySQL版本14.14发行版5.7.25。然后您没有使用MySQL 8,在这种情况下,不能使用检查约束。那么您唯一的选择就是使用触发器。那么其他约束呢,有没有办法检查我的表中应用了哪些约束?显示创建