You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL:约束规则的具体定义在数据字典中存储于哪个表?

查找存储CHECK约束具体规则的系统表

你可以通过information_schema.CHECK_CONSTRAINTS系统表获取CHECK约束的具体定义,这个表专门存储CHECK约束的规则内容,能弥补TABLE_CONSTRAINTS仅提供约束名称和类型的不足。

查询示例

针对你提到的TESTE7表,可通过以下SQL查询其CHECK约束的具体规则:

SELECT CONSTRAINT_NAME, CHECK_CLAUSE
FROM information_schema.CHECK_CONSTRAINTS
WHERE CONSTRAINT_SCHEMA = '你的数据库名'
  AND TABLE_NAME = 'TESTE7';

执行后会返回类似结果:

+----------------+---------------------------+
| CONSTRAINT_NAME| CHECK_CLAUSE              |
+----------------+---------------------------+
| id_check       | ((`ID` between 1 and 10)) |
+----------------+---------------------------+

注意事项

  • 该表仅在MySQL 8.0及以上版本中可用,因为MySQL 8.0才正式完善了CHECK约束的支持(此前版本的CHECK约束仅允许语法定义,但实际不生效)。
  • 查询时需指定CONSTRAINT_SCHEMA(对应数据库名称),避免跨库查询导致结果不准确。

内容的提问来源于stack exchange,提问作者Astora

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 06:22:06