MySQL 如何显示表上所有约束条件
要显示表上的所有约束条件,可以尝试以下任一方法−
阅读更多:MySQL 教程
方法1−使用SHOW命令
可以使用Show命令查看。语法如下−
SHOW CREATE TABLE yourTableName;
方法2−使用information.schema
可以使用information.schema。语法如下−
select COLUMN_NAME, CONSTRAINT_NAME, REFERENCED_COLUMN_NAME, REFERENCED_TABLE_NAME
from information_schema.KEY_COLUMN_USAGE
where TABLE_NAME='yourTableName';
要显示表上的所有约束条件,请执行以上语法。假设我们已经有了一个名为“ConstraintDemo”的表格。
查询如下−
mysql> select COLUMN_NAME, CONSTRAINT_NAME, REFERENCED_COLUMN_NAME, REFERENCED_TABLE_NAME
−> from information_schema.KEY_COLUMN_USAGE
−> where TABLE_NAME = 'ConstraintDemo';
以下是显示约束条件的输出−
+-------------+-----------------+------------------------+-----------------------+
| COLUMN_NAME | CONSTRAINT_NAME | REFERENCED_COLUMN_NAME | REFERENCED_TABLE_NAME |
+-------------+-----------------+------------------------+-----------------------+
| Id | PRIMARY | NULL | NULL |
| Id | Id | NULL | NULL |
+-------------+-----------------+------------------------+-----------------------+
2 rows in set, 2 warnings (0.04 sec)
现在让我们使用show命令检查。查询如下−
mysql> show create table ConstraintDemo;
以下是输出内容−
+----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| ConstraintDemo | CREATE TABLE `constraintdemo` (`Id` int(11) NOT NULL,`Name` varchar(100) NOT NULL, PRIMARY KEY (`Id`), UNIQUE KEY `Id` (`Id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |
+----------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)