MySQL 如何在任何数据库表中识别复合主键
您可以使用聚合函数count(*)。如果它返回一个大于1的值,则表示该表具有复合主键。
首先让我们创建一个表 –
mysql> create table DemoTable1324
-> (
-> StudentId int,
-> StudentName varchar(20),
-> StudentAge int,
-> StudentCountryName varchar(20)
-> );
查询成功,影响0行 (0.52秒)
这是添加复合主键的查询 –
mysql> alter table DemoTable1324 ADD CONSTRAINT constr_IdAgeCountry PRIMARY KEY (StudentId, StudentAge,StudentCountryName);
查询成功,影响0行 (1.29秒)
记录:0 重复:0 警告:0
以下是在任何MySQL数据库表中识别复合主键的查询 –
mysql> select count(*) AS Total
-> from information_schema.KEY_COLUMN_USAGE
-> where table_name='DemoTable1324' and table_schema=database();
这将产生以下输出 –
+-------+
| Total |
+-------+
| 3 |
+-------+
1行结果,2个警告(0.76秒)
阅读更多:MySQL 教程
极客教程